※ ChatGPTを利用し、要約された質問です(原文:avrstudioというソフトを使ってAVRの ATtiny2313と)
AVRのATtiny2313を動かすためのプログラムの勉強
このQ&Aのポイント
AVRのATtiny2313を動かせるようにするためのプログラムの勉強について教えてください。
winavrでC言語を使用してAVRのプログラムを作成したいのですが、キーボードで特定の文字を打つと意図しない文字になってしまいます。
また、与えられたソースコードの意味が理解できません。無限ループの中でボタンの動作に応じてLEDが点灯するようになっているようですが、具体的な動作の解説を教えてください。
avrstudioというソフトを使ってAVRの ATtiny2313と
avrstudioというソフトを使ってAVRの ATtiny2313というマイコンを動かせるようプログラムの勉強をしているのですが・・・最初からつまずいています・・・どなたか教えていただけないでしょうか
winavrでC言語を使ってしようと思うのですが
avrstudio上で"~A"というように(ここでも→のようになるのでわかりやすいように~としてます・・。googleの検索窓だと半角英数の時にキーボードの”ほ”の横のボタンをシフトと一緒に押すとできるのですが・・)打ちたいのですがキーボードで打つと~Aとなってしまいます・・
それと、ソースがなかなか読めないです・・
tiny2313のPA1とPA0にスイッチがついてます
ポートbの0、1,2,3、にはLEDがつながっています
while(1){
x=PINA;
x=(~A &0b00000011);
PORTB = x;
} /*xはunsigned charで*/
これはどういう意味なのでしょうか・・while(1)だから無限ループでどうやらボタンを押すと反転??してLEDが永遠につくというものらしいですがボタンの動作をどう読んでいるのかいまいちわかりません><
どなたかお願いします
お礼
回答ありがとうございます! なるほど! Xという変数値にpinAの入力値が入るんですね! えっとですね・・~Aではなく~xでしたすいません>< Xの反対との論理積ですから・・・0が一つでもあるほうを0として・・・・PORTBに代入・・・・多分これでボタン押したらportbから出力されるんですよね・・・ 頭がコンガらがってきたので少し冷やしてから考えてみます! ありがとうございました! 後、説明が分かりにくくてすいません前の質問はいろいろ考えてみましたが多分~でいいかなと!