单片机的学习
MyScala
技术交流产生生命力
展开
-
4*4矩阵键盘的设计
本次设计是利用单片机技术,采用利用键盘产生中断的思想,利用中断查询的方法,用汇编语言设计了一个4×4的键盘模块,键盘有值0--F时产生中断,用数码管显示相应的按键值。 汇编程序如下: ;*********************************************************; 0 1原创 2010-02-04 20:27:00 · 7548 阅读 · 3 评论 -
数码管的显示和发光二极管
第一次用C语言写单片机的程序感觉有点生疏,有点吃力,但最后还是把程序在板子上运行出来了,本人用的是郭天祥的实验开发板,通过自己设计完成数码管的显示与相应的发光二极管的点亮,即如:当数码管显示5时,有5个连续的二极管被点亮。本次的程序虽然简单,但是还是让我学到不少 #include#define uchar unsigned charsbit D0=P2^3;//扬声器的控制sbit原创 2010-02-05 13:39:00 · 1501 阅读 · 0 评论 -
单片机,数字电子钟
新年将至,研究所的其他同学已经到家了,作为外省的我还留在学校。父母在家倍是思念,因此,我也即将离去。寒假决定学习单片机,现在还在路上,回家后就不能像在所里面软硬件结合的学习了,除了看书还是看书,于是回家之际,结合郭天祥的单片机实验开发板,我自己设计了一个很简单的数字电子钟的C语言程序,以激励自己不断地学习单片机。 本程序采用数码管动态显示的方式,7段数码管分时选用,采用定时中断操作。其原创 2010-02-08 01:15:00 · 1990 阅读 · 1 评论 -
串口通信
采用单片机的P3.0和P3.1口,并利用串口调试软件完成数据的发送和接受: #includeunsigned char flag,temp;void main(){ TMOD=0x20;//定时器采用方式2,自动重装 TH1=0xfd; TL1=0xfd;//初值,波特率9600 TR1=1; SCON=0X50;//串行口采用方式1,10位异步收发,波特原创 2010-03-01 10:53:00 · 715 阅读 · 0 评论 -
瓦楞机的设计
设计操作流程及要求: 1、当第一次给单片机上电时,功能数码管显示1,时间设置数码管按照由I2C中读取的值进行显示。此时用户可对电磁阀的得电时间、卸载时间和能耗制动时间进行设置。 2、数码管在显示数据的过程中,I2C不但要对按键不断变化的数据进行实时的存储,而且要能够被及时的读出并显示在数码管上。3、用户在进行按键操作时,按键与按键之间的操作不应过快,以便给CPU原创 2010-03-10 21:45:00 · 1082 阅读 · 1 评论 -
浅谈51单片机内存优化
对 51 单片机内存的认识,很多人有误解,最常见的是以下两种① 超过变量128后必须使用compact模式编译 实际的情况是只要内存占用量不超过 256.0 就可以用 small 模式编译② 128以上的某些地址为特殊寄存器使用,不能给程序用 与 PC 机不同,51 单片机不使用线性编址,特殊寄存器与 RAM 使用重复的重复的地址。但访问时采用不同的指令,所以并不会占用 RAM 空间。原创 2010-05-13 19:28:00 · 7435 阅读 · 0 评论