[戻る]
新着表示

Re: 18f452で電圧を表示 投稿者:Gokan 投稿日:2016/12/13(Tue) 23:11:40 No.772

CCSのマニュアルにitoa関数の使い方が書いてありますよ。

> LCD SC2004Cに18f452でAD変換した値を表示したいのですが
> itoa(Integer to Ascii)という関数を使うとすぐ分解能の値をすぐに文字列にして送れるらしいのですが、18f452にはitoa関数が無い様で使えません。変わりにatoiという関数が使えるのですがうまく使いこなせません。
> 誰かそこらへんの詳しい方がいらしたら教えていただきたいです。
>
> CCS-Cでプログラムは書いてます

18f452で電圧を表示 投稿者:negishi 投稿日:2016/12/12(Mon) 22:17:58 No.771

LCD SC2004Cに18f452でAD変換した値を表示したいのですが
itoa(Integer to Ascii)という関数を使うとすぐ分解能の値をすぐに文字列にして送れるらしいのですが、18f452にはitoa関数が無い様で使えません。変わりにatoiという関数が使えるのですがうまく使いこなせません。
誰かそこらへんの詳しい方がいらしたら教えていただきたいです。

CCS-Cでプログラムは書いてます

Re^2: 開発環境とモデル 投稿者:sugaular 投稿日:2016/12/08(Thu) 13:23:07 No.769

さっそくの回答ありがとうございます。
pickit3を買います。

RS232C以外で、今だと何がお勧めでしょうか。

単純に、FTDIのドライバが手に入りやすい。
既にRS232C通信の制御ソフトがあって
それで制御するためなのですが。

ただ、今後RS232Cの次に来るものに
興味があります。

Re: 開発環境とモデル 投稿者:ダークマター 投稿日:2016/12/08(Thu) 12:08:54 No.768

こんにちわ。
pickit3を購入して下さい。
microchipのオフィシャルサイトから購入の方が、むしろ良いと思います。
他サードパーティ物でよければ、ネットに幾らでも転がっていますが、安かろう悪かろうなので、止めましょう。

そして、今更RS232Cなんて止めましょう。

> お世話になっております。
> PICマイコンの開発環境を整えようと考えているのですが
> おそらくPIC16辺りを使うことが多いと思います。
> pickit2/3だと2を買っておけばよいでしょうか?
>
> そしてpickitを探してるのですが売ってる場所が見つからなくて
> もしご存知でしたら教えて頂けたらありがたいです。
>
> あと、まず今考えているのが
> FTDIのUSB-UART変換デバイスとPICを乗せて
> RS232C通信で
> ある機器をIO制御するモノを考えています。
> この用途だと、先日の
> PIC16F18325辺り使っておけば大丈夫でしょうか。
>
> よろしくお願いします。

開発環境とモデル 投稿者:sugaular 投稿日:2016/12/08(Thu) 01:03:05 No.767

お世話になっております。
PICマイコンの開発環境を整えようと考えているのですが
おそらくPIC16辺りを使うことが多いと思います。
pickit2/3だと2を買っておけばよいでしょうか?

そしてpickitを探してるのですが売ってる場所が見つからなくて
もしご存知でしたら教えて頂けたらありがたいです。

あと、まず今考えているのが
FTDIのUSB-UART変換デバイスとPICを乗せて
RS232C通信で
ある機器をIO制御するモノを考えています。
この用途だと、先日の
PIC16F18325辺り使っておけば大丈夫でしょうか。

よろしくお願いします。

Re: pic16f1939でLCD 投稿者:Gokan 投稿日:2016/12/05(Mon) 17:10:51 No.766

下記サイトの太陽電池雲台の最後にあるファームウェアをダウンロード
していただけば、LCD用ライブラリがあります。

http://www.picfun.com/f1makeframe.html

> こんにちは。picで電子工作を始めようと思っている初心者です。様々なサイトや本を見ると、picでキャラクタLCDを制御して、文字を表示させている方がかなりいらっしゃいます。それを目指して、上記のpicでLCD表示をさせてみようとしたのですが、制御用ライブラリなるものが必要との記述がありました。今回使っているLCD(SC2004)にもそのライブラリが必要とかんがえていますが、一から作らねばならないのかと戦々恐々としております。
> 何か流用出来る物がありましたら、是非御教授願いたいと思っております。
> 長文失礼しました。返信お待ちしております。

pic16f1939でSC2004制御 投稿者:初心者 投稿日:2016/12/05(Mon) 11:18:50 No.765

こんにちは。picで電子工作を始めようと思っている初心者です。様々なサイトや本を見ると、picでキャラクタLCDを制御して、文字を表示させている方がかなりいらっしゃいます。それを目指して、上記のpicでLCD表示をさせてみようとしたのですが、制御用ライブラリなるものが必要との記述がありました。今回使っているLCD(SC2004)にもそのライブラリが必要とかんがえていますが、一から作らねばならないのかと戦々恐々としております。
何か流用出来る物がありましたら、是非御教授願いたいと思っております。
長文失礼しました。返信お待ちしております。

Re^6: プログラム領域 投稿者:negishi 投稿日:2016/11/30(Wed) 17:46:58 No.763

jump_to_isrとか使わずに
例をもとに
関数Funcをwhileの最後に入れて実行するだけでうまくいきました。


> 下記ページの 「#orgの使い方」のページを参照してください。
>
> http://www.picfun.com/ctechframe.html
>
>
> > MPLAB XC8インストールしてみたのですが、アプリケーションがうまく動かなくて挫折しました。
> > 何とかMPLAB IDEv7.5でうまく元の領域に戻る方法はないでしょうか?
> > 一応プログラムはこんな構造なんですが
> >
> > 後半のROM領域のプログラム(関数)func(){}
> >
> > main(){
> > while(1){
> > jump_to_isr(後半のプログラム領域の最初のアドレス);}
> > }
> >
> > func関数終了後 whileの最初に戻るようにしたい
> >
> >
> > > CCSのC言語だったのですね。アセンブラかと思いました。
> > > MPLAB XC8ならこういう問題は全く気にならなくなります。
> > >
> > > > >#org start,end
> > > > でプログラムの後半部分指定してjump_to_isr(address)で後半の最初のアドレスを指定したところ後半のROMにプログラムが書けたのですが、今度は前半部にうまく戻れなくなってしまいました。
> > > >
> > > > jump_to_isr(address)で戻りたいそれらしきアドレスを指定したのですが、戻れず一番最初の#use delay()に戻ってしまいプログラムが止まってしまいます。#orgが先に無いからダメなのかと思い#orgを前半部分指定で書いて見たのですがコンパイルエラーが出てしまいます
> > > >
> > > >
> > > >
> > > > PIC16は2kW単位のページで構成されていて、命令で直接ジャンプ
> > > > > できるのはページ内に限定されます。
> > > > > ページを超えてジャンプするときにはページ切り替えをしてから
> > > > > ジャンプ命令を実行する必要があります。
> > > > > プログラム作成も、ページを意識して2kWを超えないように記述し
> > > > > 超える場合はORGでページを指定してから記述する必要があります。
> > > > >
> > > > > Cコンパイラを使えばこういう問題は気にしなくてよくなります。
> > > > >
> > > > >
> > > > > > 16f87でプログラムを書いてコンパイルするとOut of ROM、A segment or the program is too large main と出てコンパイルエラーが出てしまいます。
> > > > > > 調べたらROM使用量50%までは大丈夫だと分かりました。でも半分も残っているのにもうプログラムが書けないのは何でなのでしょう。どうしたら残り50%も使えるのかわかる方がいたら教えて頂きたいです。

Re^5: プログラム領域 投稿者:Gokan 投稿日:2016/11/29(Tue) 22:21:48 No.762

下記ページの 「#orgの使い方」のページを参照してください。

http://www.picfun.com/ctechframe.html


> MPLAB XC8インストールしてみたのですが、アプリケーションがうまく動かなくて挫折しました。
> 何とかMPLAB IDEv7.5でうまく元の領域に戻る方法はないでしょうか?
> 一応プログラムはこんな構造なんですが
>
> 後半のROM領域のプログラム(関数)func(){}
>
> main(){
> while(1){
> jump_to_isr(後半のプログラム領域の最初のアドレス);}
> }
>
> func関数終了後 whileの最初に戻るようにしたい
>
>
> > CCSのC言語だったのですね。アセンブラかと思いました。
> > MPLAB XC8ならこういう問題は全く気にならなくなります。
> >
> > > >#org start,end
> > > でプログラムの後半部分指定してjump_to_isr(address)で後半の最初のアドレスを指定したところ後半のROMにプログラムが書けたのですが、今度は前半部にうまく戻れなくなってしまいました。
> > >
> > > jump_to_isr(address)で戻りたいそれらしきアドレスを指定したのですが、戻れず一番最初の#use delay()に戻ってしまいプログラムが止まってしまいます。#orgが先に無いからダメなのかと思い#orgを前半部分指定で書いて見たのですがコンパイルエラーが出てしまいます
> > >
> > >
> > >
> > > PIC16は2kW単位のページで構成されていて、命令で直接ジャンプ
> > > > できるのはページ内に限定されます。
> > > > ページを超えてジャンプするときにはページ切り替えをしてから
> > > > ジャンプ命令を実行する必要があります。
> > > > プログラム作成も、ページを意識して2kWを超えないように記述し
> > > > 超える場合はORGでページを指定してから記述する必要があります。
> > > >
> > > > Cコンパイラを使えばこういう問題は気にしなくてよくなります。
> > > >
> > > >
> > > > > 16f87でプログラムを書いてコンパイルするとOut of ROM、A segment or the program is too large main と出てコンパイルエラーが出てしまいます。
> > > > > 調べたらROM使用量50%までは大丈夫だと分かりました。でも半分も残っているのにもうプログラムが書けないのは何でなのでしょう。どうしたら残り50%も使えるのかわかる方がいたら教えて頂きたいです。

Re^4: プログラム領域mondai 投稿者:negishi 投稿日:2016/11/29(Tue) 19:18:02 No.761

MPLAB XC8インストールしてみたのですが、アプリケーションがうまく動かなくて挫折しました。
何とかMPLAB IDEv7.5でうまく元の領域に戻る方法はないでしょうか?
一応プログラムはこんな構造なんですが

後半のROM領域のプログラム(関数)func(){}

main(){
while(1){
jump_to_isr(後半のプログラム領域の最初のアドレス);}
}

func関数終了後 whileの最初に戻るようにしたい


> CCSのC言語だったのですね。アセンブラかと思いました。
> MPLAB XC8ならこういう問題は全く気にならなくなります。
>
> > >#org start,end
> > でプログラムの後半部分指定してjump_to_isr(address)で後半の最初のアドレスを指定したところ後半のROMにプログラムが書けたのですが、今度は前半部にうまく戻れなくなってしまいました。
> >
> > jump_to_isr(address)で戻りたいそれらしきアドレスを指定したのですが、戻れず一番最初の#use delay()に戻ってしまいプログラムが止まってしまいます。#orgが先に無いからダメなのかと思い#orgを前半部分指定で書いて見たのですがコンパイルエラーが出てしまいます
> >
> >
> >
> > PIC16は2kW単位のページで構成されていて、命令で直接ジャンプ
> > > できるのはページ内に限定されます。
> > > ページを超えてジャンプするときにはページ切り替えをしてから
> > > ジャンプ命令を実行する必要があります。
> > > プログラム作成も、ページを意識して2kWを超えないように記述し
> > > 超える場合はORGでページを指定してから記述する必要があります。
> > >
> > > Cコンパイラを使えばこういう問題は気にしなくてよくなります。
> > >
> > >
> > > > 16f87でプログラムを書いてコンパイルするとOut of ROM、A segment or the program is too large main と出てコンパイルエラーが出てしまいます。
> > > > 調べたらROM使用量50%までは大丈夫だと分かりました。でも半分も残っているのにもうプログラムが書けないのは何でなのでしょう。どうしたら残り50%も使えるのかわかる方がいたら教えて頂きたいです。

| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 |

- WebForum -