自发自收 程序 单片机89c51 汇编语言

作者&投稿:驹彩 (若有异议请与网页底部的电邮联系)
帮我运行一下这个89C51单片机汇编语言程序,看看结果对不对.~

对 定时 5 uS 中断 输出频率 100k 仿真结果正确

晶阵频率11059200Hz,是不可能得到延时恰好1秒的。

12MHz,6MHz都可以。

参考如下电路和程序:




内黄县19810586311: stc单片机串口自发自收调试 -
度话强力: 单片机收到数据后直接填数据缓冲区,然后发送就可以了.测试MAX232那就更简单了,计算机上用串口工具软件给串口自动发送数据,串口电路上电工作然后找个金属物吧MAX232本该接单片机TXD和RXD的那两个引脚短路,看看计算机是否收到数据即可.(注意不要和VCC短路了)如果TXD和RXD被短路后计算机上的串口工具软件收到自己发送的数据,并且正确,那就是MAX232工作正常.

内黄县19810586311: 89C51系列单片机的性能参数 -
度话强力: 主要包括具有64KB寻址空间,4KB程序存储单元,RAM(256个字节);2个定时器,2个中断口,1个UARST串口, 外部晶振12M,机器周期1M,程序指令周期1个机器周期以上,即1S内程序指令执行调试小于1M, 5V供电,IO口除P0需外接电阻外,其它都可直接驱动电平输出,但是电流驱动能力小于10mA,因此驱动10mA以上器件,需外接三极管或者MOS管驱动

内黄县19810586311: 89C51单片机以89C51或8031单片机为核心芯片,扩展1片数据存贮器(容量自定)、1片程序存贮器和16路模拟信号A/D转换器(分辨率8位),系统中再设置一个16个键的键盘,构成一个完整的数据采集
度话强力: 如果你是学生,用以下芯片 AT89C51 ADC0809 82C79 6264 27C256 74HC573 如果你在做东西,用以下芯片就够了,程序数据不用,芯片里自己就带了 SST89E516 ADC0809 ZLG7279

内黄县19810586311: 89C51单片机片内包含哪些主要的逻辑功能部件? -
度话强力: 1,ALU算术逻辑运算单元; 2,ROM或Flash程序存储器; 3,RAM数据存储器; 4,定时/计数器; 5,UART串口通信功能模块; 6,时钟脉冲振荡器; 7,中断逻辑单元; 8,I/O控制单元; 9,特殊功能寄存器; 10,电源管理和复位单元 增强型51单片机还增加了AD转换功能模块、PWM功能模块、EEPROM非易失性数据存储器、自编程功能模块.

内黄县19810586311: 单片机程序编写stc89c51程序 -
度话强力: if(~key) { delay(10);//去抖 if(~key) { delay(500);//短按,时间可在 //200-500毫秒之间调整 if(key)//如果释放就是短按 { //此处执行你的程序 } else//如果没释放按键 { delay(500);//再延时500毫秒 if(~key)//如果还没释放 while(~key);//等待释放 { //此处放入长按1秒后 //需要执行的程序 } } } }

内黄县19810586311: 89c51单片机编程 -
度话强力: 电阻值是模拟量,单片机是不能直接处理的,需经过AD转换.比如将通光时电阻值转换为1,遮光转换为0.这样就得到了触发信号,再接着写接到触发信号后单片机的动作即可

内黄县19810586311: 89c51单片机程序设计!!!
度话强力: 办法比较多,89c51自己是不带ad的,那么外接ad程序比较麻烦,你这对电压也不测量精确值,所以用不着ad,只要能区分电压值不同就行了.考虑到程序的简单,就用比较器,比如说接五个比较器,阈值分别为1v、2v、3v、4v、5v,把他们的输入端接在一起,输出端接在单片机的五个io口上,再接五个发光二极管在另外五个io口上,发光二极管的另一端分别串个限流电阻接在电源上,硬件完成了.程序就好写多了,只要判断五个比较器输出端电平,然后控制相应的灯亮灭就行了.比较器也不一定五个,三个两个也一样,这样精度就不太高而已.不过程序就几行代码.简单.

内黄县19810586311: 单片机C程序:89C51 开关(P1 - 1)按下并持续10秒后,LED(P1 - 0)亮并保持亮,开关松开后,LED便保持灭状态 -
度话强力: #include<reg52.h>#define uint unsigned int uint num; sbit P1_0=P1^0; sbit P1_1=P1^1; void delay(uint z)//延时函数 { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } void main() { TMOD=0x01; //选用T0定时器模式 TH0=(65535-45872)/256; //T1初值50...

内黄县19810586311: 单片机89c51程序问题 -
度话强力: 这个程序 是一个二位数 秒 计数程序,二位数 要显示 如 显示 12 则要用二个数码管显示 12 是用一个字节记录的 所以 先把 2 送入个位显示(也可以先送十位) 那么 12 先清高4位 ( 注 高4位 是 1 低4位 2)保留低4位 再 查表获得显示 2 的字形码 送个位数码管 显示 接下来是 显示 1 (SWAP A)指令是高低4位互换 就是 12 变成 21 再保留低4位 1 再 查表获得显示 1

内黄县19810586311: 89c51编程 -
度话强力: #includeunsigned char i; unsigned char temp; unsigned char a,b; void delay(void) //延时子程序// { unsigned char m,n,s; for(m=20;m>0;m--) for(n=20;n>0;n--) for(s=248;s>0;s--); } void main(void) { while(1) { temp=0xfe; P1=temp; //看你的电路版上...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网