单片机毕设程序怎么办,毕设里单片机的STC89C52芯片是焊在电路板上的怎么更改程序后
来源:整理 编辑:八论文 2024-01-25 12:42:28
1,毕设里单片机的STC89C52芯片是焊在电路板上的怎么更改程序后
你把P3.0和P3.1想办法引出来,然后用一个串口模块交叉连接RXD和TXD,然后就可以下载了,注意串口模块要和你的单片机共地。上面方法就是一般的STC系列单片机下载程序的方法。给单片机提供稳定的5v直流电即可。请详细描述的问题,说清楚输入电压是什么样,交流还是直流,板子上有什么负载。
2,单片机的设计程序是怎么弄得
其实程序最终是全部转换成机器码的,存在程序存储器中,单片机在执行程序的时候根据执行地址PC来执行相应的代码 不知道这样说是不是你需要的答案看你用什么单片机啦,你买单片机的时候问卖家用什么软件编程,建议你买一个单片机最小系统,这样就不用自己焊了,所以引脚都接了出来,自己焊的电路板经常出问题的,如果是简单的测速测温神马的就用AT89S52就行。那个用Keil编程需要一个下载程序的软件和下载线,两个需要配套。不同型号的单片机下载方式不一样,具体需要看你的芯片。
3,写单片机程序出现这个 怎么办
建立工程时不要加入启动代码就可以了,在左侧工程里把STARTUP.A51这个文件从工程里删除。然后重新编译程序。换个单片机~~~
或者确定单片机能工作的状态下 烧写时候用示波器看看tx rx脚 有没有波形 另外测电脑接入端的tx rx 波形有没有看看是不是电脑端口配置的不对编译后的程序太大,溢出了有几种可能1. 你的keil没有破解完全,不能使用big模式2. 你可以选择内部程序存储器更大的单片机,比如AT89C52代替AT89C513. 优化你的程序,使目标文件足够小
4,单片机毕业设计
温度控制系统很容易。要求控制精度不高的话可以用大名鼎鼎的DS18B20,单线通信,程序网上有的是现成的,精度要求高的话可以用铂电阻做温度传感器,这个电路网上也好找,至于具体的控制,就看单片机程序如何实现,其实也不复杂的。可以用PWM使出控制电热丝调节温度,PWM由单片机输出,调整PWM的输出占空比就可以间接调节水温,大致思想就是这样,具体还得你自己做,多下点功夫,弄会了就是你自己的,毕业设计最锻炼人的,不要浪费这个机会。同意楼上的额那传感器是相当好用的虽然当初调了蛮多时间还是很好的啊同意楼上的说法,我只是做补充:对于单片机最好选择AVR系列,比如Atmega8,然后使用Code Vision AVR C来 编写程序,因为在这软件中提供了DS18B20的控制函数,你直接调用即可;至于PWM,AVR单片机至少有三路PWM输出,精度可调。所以你的设计的难度不大。你 用什么单片机啊 ?51的话满世界都是,你百度下能出来一堆。pic的话去www.microchip.com上去找,很多都有中文的datasheet.avr没用过所以不知道。arm估计你现在毕业设计不可能用到。
5,单片机我的程序需要如何改进
主程序和两个中断程序稍加改一点,主程序上面的不用改void main()EA=1;EX0=1;EX1=1;IT0=1;IT1=1;while(1)//这不能有分号P1=0x00;//这行放在主循环程序中}}void int0() interrupt 0P1=0xfe;//初值是这个for(j=0;j<4;j++)for(i=0;i<8;i++)P1=_cror_(P1,1);delay(200);}}void int1() interrupt 2for(i=0;i<4;i++)P1=0XFF;delay(200);P1=~P1;delay(200);}}你问这样的问题说明你还不了解单片机,回去好好看书。简单说一下,单片机本身是一个硬件,但它需要软件的支持才能运行工作,软件就是用户编写的程序然后编译成机器可以识别的代码,然后烧录到这个硬件的存储器中,修改单片机的程序这种说法也对也不对,对呢是说修改用户编写的源程序是对的,但单片机程序存储器里的内容就不是修改了,而是擦除然后重新烧录的过程,你想调整单片机的功能或其中的参数的话就需要再此单片机的开发环境下面编写程序,然后编译成为机器代码,最后烧录到单片机的程序存储器中就完成了。
6,51单片机毕设问题
第一个问题发送端的编码是你自已编的还是买现的?如“TC9012”等。如果是你自定义编码的那好办呀,解决多人同时抢答的问题,可以模仿一下I2C的通讯方法呀,主要思路是“约定地址位”,比如发两个字节,程序中约定好第一个字节是地址位,抢答器中就叫身份位吧,每一个抢答器,都通过程序给它固定一个地址位。在接收端程序先判断第一位地址位,再把地址记录下来,作为回发时的目标对像。当然,“第一位”指的是引导头码之后的第一位,有玩过红外收发编译码的人引导头码是很有必要的。再罗嗦一句,这些红外信号是广播的,每一个接收器都可以接收任何一个发送器的信号,就是依靠判断约定好的”地址位”来互相识别.第二个问题我只是提个建议:如果你学过VB的话,接收端单片机可以用串口连的PC机里去,就可以做一个电子教鞭.实现很简单,因为VB里有现在的串口通讯模块,还可以通过API函数轻松控制鼠标,模拟键盘按键等.也可以用VB编个游戏,控制接口留给串口接口,这样就是一个游戏摇控器啦.本人刚接触红外通讯时就是做了这两个东东.我帮同学做过一份51单片机的毕业设计,了解了一下,按照现在的大学制度。。。你这个毕设不会被评价为过于简单的(不过要看你的学校级别了,呵呵,这个问题不可回避)。因为有些学校单单一个51做的电子表就能通过答辩了。。。至于你说的两个人同时按抢答键的问题。。。个人拙见:以普通51us级的判断能力,不会出现绝对同时的。。。监测到一个按键按下后,屏蔽掉输入。但如果你非要钻牛角尖,说假设出现了。。。那么其实也很简单,1.显示同时按下,无效。2.利用一个计数器,让它一直跑,当出现两个按键同时按下的情况,判断此时计数值,如果是奇数,为某某按下,偶数则为某某某按下,让上帝来决策。。。有点荒唐,但很有用。。。希望能对你有所帮助--------------------------mscfox
7,大神求助啊正在做毕业设计我做的是单片机定位发短信的东西
不能发信息这个没说清楚。。是不能发短信呢?还是AT指令根本就不通呢?AT指令不通的话,可以先把单片机和900啊分别用串口模块(比如USB转串口)测试,看单片机发出的串口指令在电脑上能不能正常收发。然后测试900a跟电脑能不能正常收发。注意串口波特率,900a好像默认的9600波特率。单片机和900a分别跟电脑测试串口正常的话,应该就没问题了。最多RX和TX调换一下。AT指令通了功能基本就完成了。如果不能发短信,可以AT指令查询信号强度。保证手机卡没有停机。如果900a部分AT指令正常,不能读到卡的话,可能是sim卡的电路问题,记得有两个管脚的电容大小有影响。1、若要将从6000h开始的256个·字节外部数据存储器块的内容设置成11h,请修改程序完成此操作。 mov dptr, #6000h mov a, #11hlop: movx @dptr, a djnz dpl, lop sjmp $end2、将累加器a中的两位16制数拆为两个ascii码,并存入result开始的第二个单元。高位的ascii码存在内ram30h单元,低位的存在内ram31h单元。谢谢! push b mov b, #16 div ab mov 30h, a mov 31h, b pop b clr c subb a, #10 mov a, 30h jc ne1 add a, #7ne1: add a, #30h mov 30h, a mov a, 31h clr c subb a, #10 mov a, 31h jc ne2 add a, #7ne2: add a, #30h mov 31h, a sjmp $end对终端来说,txd rxd可能应该和单片机的 txd rxd交叉对接吧
文章TAG:
单片机毕设程序怎么办单片机 毕设 程序