5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

AVRマイコン総合スレ Part11

425 :774ワット発電中さん:2008/08/01(金) 22:34:25 ID:APwILZVX
>>422
シミュレータ1では高速PWMうまく動かないもんね
シミュレータ2でデバイスをTINY48にしてデバッグできない?
TIMER1のレジスタほとんど同じだし。
↓のコードは「TIMSK1」を「TIMSK」に書き換えるだけで2313互換だよ。今動かしたら正常にシミュレートできた。

#include <avr/io.h>
#include <avr/interrupt.h>

ISR (TIMER1_OVF_vect)
{
PORTB ^= _BV(0);
}

ISR(TIMER1_COMPB_vect)
{
PORTB ^= _BV(0);
}

int main(void)
{
TCNT1 = 0; // タイマ初期値設定
OCR1A = 0xFFF; // TOP
OCR1B = 0x7FF; // 反転
TIMSK1 = _BV(OCIE1B) | _BV(TOIE1); // 反転時とTOP時に割り込み
TCCR1A=_BV(WGM11)|_BV(WGM10); //高速PWMモード
TCCR1B=_BV(WGM13)|_BV(WGM12)|_BV(CS10); //高速PWMモード(TOP = OCR1A)、CLK=1/1

sei(); // 割り込みの許可
while(1);
}


289 KB
★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.02 2018/11/22 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)