c语言编程:8051单片机系统的时钟为11.0592,把0~99从串行口输出。
char aa, bb = 0;\/\/--- void main(void){ PCON = 0x00; \/\/ 波特率不倍增.SCON = 0x50; \/\/ 设定串行口工作方式.TMOD = 0x21; \/\/ T1定时方式2, 用于产生波特率.\/\/ T0定时方式1, 用于定时.TL1 = (uchar)(256 - (XTAL \/ (384L * baudrate))); \/\/ T1赋初值.TH1 =...
...程序:设置串行口中断,波特率9600bps(晶振11.0592MHz),向电脑发送...
include "reg51.h"include "intrins.h"typedef unsigned char BYTE;typedef unsigned int WORD;define FOSC 11059200L define BAUD 9600 bit busy;void SendData(BYTE dat);void SendString(char *s);void main(){ BYTE i;SCON = 0x50;TMOD = 0x20;TH1 = TL1 = -(FOSC\/12\/32\/BAUD);TR1 =...
求一个51单片机C语言程序编程
void main(void) \/* 主函数*\/ { SCON=0x40; \/*方式1只发送,不接收*\/ TMOD=0x20;TH1=0xfd; \/*给定时器T1赋初值,波特率为9600*\/ TL1=0xfd;TR1=1;k=1;NO=0;while(1){ if(k==0){while(k==0);NO=(NO+1)%4;} switch (NO){case 0 :P0=0xff;break;case 1 :P00...
我用的51单片机的振荡频率为11.0592MHZ,此单片机的定时器能最小识别...
后来改成50微秒,计400次舵机就不正常工作,那说明舵机不能识别那么高频率的方波,或者数据类型错了,应该定义为unsigned int。因为unsigned char 类型最大值只能是255。
单片机编程:假设晶振频率为11.0592Mhz,试编写一程序,在P1.7引脚输出周期...
\/\/f=11.0592MHzsbit pout=P1^7;unsigned char cnt0=144,cnt1=32;void main(){ Init(); while(1) { PCON=0x01; \/\/休眠 }}void Init(){ TMOD=0x2; \/\/方式2:8位自装入 TH0=0x56; \/\/基础定时 TL0=0x56; TR0=1; ET0=1; EA=1; }...
用C语言编制一个在8个数码管上轮流显示1~8的程序(单片机8051)
还有要用到的I\/O口 char tab[]={} \/\/显示1--8的数码管编码;voide delay(uint a)\/\/延迟a ms 晶振伟11.0592 { uint i,j;for(i=a;i>0;i--);for(j=110;j>0;j--);} main(){ while(1){ \/\/在循环语句里执行显示函数 } } 说明:由于这个得看你的电路图具体情况,上面只是一个...
MCS51单片机时钟频率fosc11.0592MHZ,其波特率为1200bps,SMOD=0,T1工...
TMOD = 0x20;\/\/ 定时器1工作于8位自动重载模式, 用于产生波特率 TH1=TL1=0xE8;\/\/ 波特率1200 SCON = 0x50;\/\/ 设定串行口工作方式1 允许接收,相当于下面三句 \/\/SM0=0;\/\/SM1=1;\/\/REN=1;PCON =0x00;\/\/ 波特率不倍增 SMOD = 0 TR1 = 1;...
假设单片机的晶体震荡器的频率是11.0592MHz,利用定时器1采用方式1定时2...
【例7-3】设STC12C5A60S2单片机的系统时钟频率为12MHz,编程实现从P1.1引脚输出周期为1s的方波。分析:根据题目要求知,P1.1引脚的输出应每隔500ms取反一次,即定时时间为500ms。用一个定时\/计数器无法实现,可用定时\/计数器T1进行10ms的定时,然后用寄存器R7对10ms定时中断次数计数50次来实现。...
基于单片机多功能数字钟
setb rs1 ;键盘子程序 JB WEIXUAN,JIAN_ZEND ;设置键的判断 LCALL DELAY5MS JB WEIXUAN,JIAN_ZEND PUSH ACC JNB WEIXUAN,$ ;MOV A,#0FH ;开启光标闪烁设置 ;LCALL LCDWCN fah: JNB NZBZ,JPNZSJ ;为“1”闹钟 为“0”时钟 LCALL JPXS MOV R4,#86H ;闹钟设定时间R4存放显示位地址 MOV R5,#2 ;闹...
晶振为11.0592的at89c51单片机用C语言能实现1微妙的延时吗?怎么写?要...
一个单片机工作于12M晶振,它的时钟周期是1\/12(微秒)。它的一个机器周期是12*(1\/12)也就是1微秒。你用的是11.0592的单片机,这就不能达到要求,而且你用C语言编程还要带形参,所以根本不可能实现1微妙延时,你可以用12M的晶振,然后用一个_NOP_()指令来延时1微妙。