欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 跪求大神直接指點,小白最近剛到一個mega128a,問了些問題 [打印本頁]

作者: 堂吉訶德    時間: 2015-6-16 21:53
標題: 跪求大神直接指點,小白最近剛到一個mega128a,問了些問題
最近剛接觸mega128a,在使用由于是小白,遇到一些問題。
目的:發送20~0,21個數字,發完后便停止發送。
問題:單片機一直不停地發送14(20的16進制表示),看著都累
程序:
#include <mega128.h>
#include <delay.h>
#define UDRE 5
#defineF_CPU 4000000
#define baud 9600 //設置波特率的大小
#define baud_setting (unsigned int)((unsigned long)F_CPU/(16*(unsigned long)baud)-1) //波特率計算公
#define baud_h (unsigned char)(baud_setting>>8) //提取高位
#define baud_l (unsigned char)(baud_setting) //低位


unsigned int tx_count=20;

interrupt [USART0_TXC] void txc0_over(void)
{
delay_ms(1000);
tx_count--;
}


void USART0_Transmit()
{
while(!(UCSR0A & (1 << UDRE)));
UDR0 = tx_count;
}


void main(void)
{
PORTE.6 = 0;
PORTE.7 = 0;
DDRE.6 = 1;
DDRE.7 = 1;
UCSR0A=0x00; //單倍速模式
UCSR0B=0x48; //接收中斷和發送中斷允許
UCSR0C=0x06; //寫UCSRC寄存器,異步通信無校驗,8位數據1位停止位
UBRR0H=baud_h; //寫波特率的值
UBRR0L=baud_l;
#asm("sei")
while (1)
{
if(tx_count >= 0)
USART0_Transmit();
}
}





歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1