① 设计一个单片机C语言程序,有两个按键,一个按键摁下,开始计时,另一个按键摁下,停止计时
说下思路啊:首先你要确定你两个键所对应的的io口(注扒仿意这两个io口要上拉)接下来你要胡雹确定这两个io口没有按键按下去的时候口的状态啊!这样才能扫描出你的春做纤那个按键按下去!
接下来就是c语言的处理了
if(key1)
{
flag=1;
}
if(key2)
{
flag=0;
}
你在你的计时里面处理啊!当flag=0时不计时反之计时。。。
② 《单片机C语言程序设计实训100例——基于8051+Proteus仿真》 第03篇源代码
单片机c语言编程100个实例目录1
函数的使用和熟悉
实例3:用单片机控制第一个灯亮
实例4:用单片机控制一个灯闪烁:认识单片机的工作频率
实例5:将 P1口状态分别送入P0、P2、P3口:认识I/O口的引脚功能
实例6:使用P3口流水点亮8位LED
实例7:通过对P3口地址的操作流水点亮8位LED
实例8:用不同数据类型控制灯闪烁时间
实例9:用P0口、P1 口分别显示加法和减法运算结果
实例10:用P0、P1口显示乘法运算结果
实例11:用P1、P0口显示除法运算结果
实例12:用自增运算控制P0口8位LED流水花样
实例13:用P0口显示逻辑"与"运算结果
实例14:用P0口显示条件运算结果
实例15:用P0口显示按位"异或"运算结果
实例16:用P0显示左移运算结果
实例17:"万能逻辑电路"实验
实例18:用右移运算流水点亮P1口8位LED
实例19:用if语句控制P0口8位LED的流水方向
实例20:用swtich语句的控制P0口8位LED的点亮状态
实例21:用for语句控制蜂鸣器鸣笛次数
实例22:用while语句控制LED
实例23:用do-while语句控制P0口8位LED流水点亮
实例24:用字符型数组控制P0口8位LED流水点亮
实例25: 用P0口显示字符串常量
实例26:用P0 口显示指针运算结果
实例27:用指针数组控制P0口8位LED流水点亮
实例28:用数组的指针控制P0 口8 位LED流水点亮
实例29:用P0 、P1口显示整型函数返回值
实例30:用有参函数控制P0口8位LED流水速度
实例31:用数组作函数参数控制流水花样
实例32:用指针作函数参数控制P0口8位LED流水点亮
实例33:用函数型指针控制P1口灯花样
实例34:用指针数组作为函数的参数显示多个字符串
单片机c语言编程100个实例目录2
实例35:字符函数ctype.h应用举例
实例36:内部函数intrins.h应用举例
实例37:标准函数stdlib.h应用举例
实例38:字符串函数string.h应用举例
实例39:宏定义应用举例2
实例40:宏定义应用举例2
实例41:宏定义应用举例3
* 中断、定时器中断、定时器 *中断、定时器*中断、定时器 /
实例42:用定时器T0查询方式P2口8位控制LED闪烁
实例43:用定时器T1查询方式控制单片机发出1KHz音频
实例44:将计数器T0计数的结果送P1口8位LED显示
实例45:用定时器T0的中断控制1位LED闪烁
实例46:用定时器T0的中断实现长时间定时
实例47:用定时器T1中断控制两个LED以不同周期闪烁
实例48:用计数器T1的中断控制蜂鸣器发出1KHz音频
实例49:用定时器T0的中断实现"渴望"主题曲的播放
实例50-1:输出50个矩形脉冲
实例50-2:计数器T0统计外部脉冲数
实例51-2:定时器T0的模式2测量正脉冲宽度
实例52:用定时器T0控制输出高低宽度不同的矩形波
实例53:用外中断0的中断方式进行数据采集
实例54-1:输出负脉宽为200微秒的方波
实例54-2:测量负脉冲宽度
实例55:方式0控制流水灯循环点亮
实例56-1:数据发送程序
实例56-2:数据接收程序
实例57-1:数据发送程序
实例57-2:数据接收程序
实例58:单片机向PC发送数据
实例59:单片机接收PC发出的数据
*数码管显示*数码管显示 数码管显示数码管显示*/
实例60:用LED数码显示数字5
实例61:用LED数码显示器循环显示数字0~9
实例62:用数码管慢速动态扫描显示数字"1234"
实例63:用LED数码显示器伪静态显示数字1234
实例64:用数码管显示动态检测结果
实例65:数码秒表设计
实例66:数码时钟设计
实例67:用LED数码管显示计数器T0的计数值
实例68:静态显示数字“59”
单片机c语言编程100个实例目录3
键盘控制*键盘控制* *键盘控制 *键盘控制 */
实例69:无软件消抖的独立式键盘输入实验
实例70:软件消抖的独立式键盘输入实验
实例71:CPU控制的独立式键盘扫描实验
实例72:定时器中断控制的独立式键盘扫描实验
实例73:独立式键盘控制的4级变速流水灯
实例74:独立式键盘的按键功能扩展:"以一当四"
实例75:独立式键盘调时的数码时钟实验
实例76:独立式键盘控制步进电机实验
实例77:矩阵式键盘按键值的数码管显示实验
//实例78:矩阵式键盘按键音
实例79:简易电子琴
实例80:矩阵式键盘实现的电子密码锁
液晶显示LCD*液晶显示LCD *液晶显示LCD * *液晶显示LCD*液晶显示LCD *液晶显示LCD */
实例81:用LCD显示字符'A'
实例82:用LCD循环右移显示"Welcome to China"
实例83:用LCD显示适时检测结果
实例84:液晶时钟设计
*一些芯片的使用*24c02 DS18B20 X5045 ADC0832 DAC0832 DS1302 红外遥控/
实例85:将数据"0x0f"写入AT24C02再读出送P1口显示
实例86:将按键次数写入AT24C02,再读出并用1602LCD显示
实例87:对I2C总线上挂接多个AT24C02的读写操作
实例88:基于AT24C02的多机通信 读取程序
实例89:基于AT24C02的多机通信 写入程序
实例90:DS18B20温度检测及其液晶显示
实例91:将数据"0xaa"写入X5045再读出送P1口显示
实例92:将流水灯控制码写入X5045并读出送P1口显示
实例93:对SPI总线上挂接多个X5045的读写操作
实例94:基于ADC0832的数字电压表
实例95:用DAC0832产生锯齿波电压
实例96:用P1口显示红外遥控器的按键值
实例97:用红外遥控器控制继电器
实例98:基于DS1302的日历时钟
实例99:单片机数据发送程序
实例100:电机转速表设计
模拟霍尔脉冲
http://www.dzkfw.com.cn/myxin/51c_language.chm 单片机c语言一百例子
③ 单片机C语言程序,要求南北亮绿灯22S,东西亮红灯25S,求大神指导
图看不太清楚,你可以参考这个程序,如果IO口有所差别,稍作修改就可以了。
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit RED_A=P3^0; //东西向指示灯
sbit YELLOW_A=P3^1;
sbit GREEN_A=P3^2;
sbit RED_B=P3^3; //南北向指示灯
sbit YELLOW_B=P3^4;
sbit GREEN_B=P3^5;
sbit KEY1=P1^0;
sbit KEY2=P1^1;
sbit KEY3=P1^2;
//延时倍数,闪烁次数,操作类型变量
uchar Flash_Count=0,Operation_Type=1,LEDsng,LEDsns,LEDewg,LEDews,discnt;
uint Time_Count=0,timeew,timens;
uchar ledtab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xff};
void displaysn()
{
LEDsng=((timens-Time_Count)/余敏20)%10;
LEDsns=((timens-Time_Count)/20)/10;
LEDewg=0x10;
LEDews=0x10;
}
void displayew()
{
LEDewg=((timeew-Time_Count)/20)%10;
LEDews=((timeew-Time_Count)/20)/10;
LEDsng=0x10;
LEDsns=0x10;
}
//定时器0 中断函数
void T0_INT() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
switch(Operation_Type)
{
case 1: //东西向绿灯与南北向红灯亮
if((Time_Count%20)==0)displayew();
RED_A=0;YELLOW_A=0;GREEN_A=1;
RED_B=1;YELLOW_B=0;GREEN_B=0;
if(++Time_Count!=timeew) return;
Time_Count=0;
Operation_Type=2;
break;
case 2: //东西向黄灯开始闪烁,绿灯关闭
LEDewg=0x0;
LEDews=0x0;
if(++Time_Count!=10) return;
Time_Count=0;
YELLOW_A=~YELLOW_A;GREEN_A=0;
if(++Flash_Count!=10) return; //闪烁
Flash_Count=0;
Operation_Type=3;
break;
case 3: //东西向红灯与南北向绿灯亮
if((Time_Count%20)==0)displaysn();
RED_A=1;YELLOW_A=0;GREEN_A=0;
RED_B=0;YELLOW_B=0;GREEN_B=1;
if(++Time_Count!=timens) return;
Time_Count=0;
Operation_Type=4;
break;
case 4: //码旁南北竖模枝向黄灯开始闪烁,绿灯关闭
LEDsng=0x0;
LEDsns=0x0;
if(++Time_Count!=8) return;
Time_Count=0;
YELLOW_B=~YELLOW_B;GREEN_A=0;
if(++Flash_Count!=10) return; //闪烁
Flash_Count=0;
Operation_Type=1;
break;
}
}
void t1_isr() interrupt 3
{
TR1=0;
TH1=(65536-3000)/256;
TL1=(65536-3000)%256;
TR1=1;
switch(discnt)
{
case 0:
P2=0x02;
P0=ledtab[LEDewg];
break;
case 1:
P2=0x01;
P0=ledtab[LEDews];
break;
case 2:
P2=0x08;
P0=ledtab[LEDsng];
break;
case 3:
P2=0x04;
P0=ledtab[LEDsns];
break;
default:discnt=0;break;
}
discnt++;
discnt&=0x03;
}
void delay()
{
uint i;
for(i=0;i<1000;i++);
}
//主程序
void main()
{
TMOD=0x11; //T0 方式1
EA=1;
ET0=1;
TR0=1;
TH1=(65536-3000)/256;
TL1=(65536-3000)%256;
TR1=1;
ET1=1;
timeew=20*25;
timens=20*22;
Time_Count=0;
Operation_Type=1;
while(1)
{
if(KEY1==0) //按一南北下加1S
{
delay();
if(KEY1==0)
{
while(KEY1==0);
TR0=0;
timens+=20;
LEDsng=(timens/20)%10;
LEDsns=(timens/20)/10;
}
}
if(KEY2==0) //按一东西加1S
{
delay();
if(KEY2==0)
{
while(KEY2==0);
TR0=0;
timeew+=20;
LEDewg=(timeew/20)%10;
LEDews=(timeew/20)/10;
}
}
if(KEY3==0) //启动
{
delay();
if(KEY3==0)
{
while(KEY2==0);
TR0=1;
Time_Count=0;
}
}
}
}
④ msp430的书
[1]<<MSP430系列超低功耗16位单片机原理与应用>>
作者: 胡大可
出版社: 北京航空航天大学出版社
出版日期:2000年6月
内容简介
TI公司的MSP430系列微控制器是一个近期推出的单片机品种。它在超低功耗和功能集成上都有一定的特色,尤其适合应用在自动信号采集系统、液晶显示智能化仪器、电池供电便携式装置、超长时间连续工作设备等领域。本书对这一系列产品的原理、结构及内部各功能模块作了详细的说明,并以方便工程师及程序员使用的方式提供软件和硬件资料。由于MSP430系列的各个不同型号基本上是这些功能模块的不同组合,因此,掌握本书的内容对于MSP430系列的原理理解和应用开发都有较大的帮助。本书的内容主要根据TI公司的《MSP430 Family Architecture Guide and Mole Library》一书及其他相关技术资料编写。
本书供高等院校自动化、计算机、电子等专业的教学参考及工程技术人员的实用参考,亦可做为应用技术的培训教材。
[2]<<MSP430系列FLASH型超低功耗16位单片机>>
作者: 胡大可
出版日期:2001年11月
出版社: 北京航空航天大学出版社
内容简介
MSP430系列单片机在超低功耗和功能集成等方面有明显的特点。该系列单片机自问世以来,颇受用户关注。在2000年该系列单片机又出现了几个FLASH型的成员,它们除了仍然具备适合应用在自动信号采集系统、电池供电便携式装置、超长时间连续工作的设备等领域的特点外,更具有开发方便、可以现场编程等优点。这些技术特点正是应用工程师特别感兴趣的。本书对该系列单片机的FLASH型成员的原理、结构、内部各功能模块及开发方法与工具作详细介绍。
[3]<<MSP430系列单片机接口技术及系统设计实例>>
出版社: 北京航空航天大学出版社
作者: 魏小龙
出版日期:2002年11月
本书简介:
本书较为详细地介绍了TI公司的MSP430系列单片机。全书共分5章。首先讲述MSP430全系列所涉及的片内外围模块的功能、原理、应用及各个系列的模块构成情况;其次讲述MSP430的开发环境及如何使用汇编语言、C语言进行程序设计;最后例举大量的以MSP430为核心的系统设计应用实例,大部分实例同时给出汇编语言和C语言的源程序,且全部在作者设计的实验工具上测试通过,并实现了预期的功能。
本书配光盘一张,包含书中所用到的源程序及TI公司的网址与笔者的网址连接,还有MSP430软件的下载地址。
本书可作为高等院校计算机、自动化及电子技术类专业的教学参考书,也可作为大学生电子设计以及毕业设计的参考书,更适用于从事单片机开发的科技人员。
[4]<<MSP430系列单片机C语言程序设计与开发 >>
出版社: 北京航空航天大学出版社
作者: 胡大可
出版日期:2003年1月
本书简介:
MSP430系列是一个具有明显技术特色的单片机品种。关于它的硬件特性及汇编语言程序设计已在《MSP430系列超低功耗16位单片机的原理与应用》及《MSP430系列 FLASH型超低功耗16位单片机》等书中作了全面介绍。本书介绍IAR公司为MSP430系列单片机配备的C程序设计语言C430。书中叙述了C语言的基本概念、C430的扩展特性及C库函数;对C430的集成开发环境的使用及出错信息作了详尽的说明;并以MSP430F149为例,对各种应用问题及外围模块操作提供了典型的C程序例程,供读者在今后的C430程序设计中参考。
[5]<<MSP430系列16位超低功耗单片机原理与应用>>
作者: 沈建华 杨艳琴 翟骁曙
出版社: 清华大学出版社
出版日期:2004年11月1日
内容简介
本书以TI公司的MSP430系列16位超低功耗单片机为核心,介绍了MSP430单片机的特点和选型,详细讲述了MSP430单片机的结构和指令系统,对MSP430全系列单片机(包括最新的F15X、F16X)所涉及的片内外围模块的功能、原理、应用作为详尽的描述。并介绍了MPS430单片机的开发环境、汇编语言、C语言程序设计方法,以及单片机常用接口电路设计和软件编程,最后列举了两个体现MSP430单片机特点的应用系统设计实例。
本书着重讲述MSP430单片机的基本原理和基本设计应用,进一步的实践及应用系统设计可参考笔者所编着的《MSP430系列16位超低功耗单片机实践与系统设计》一书。
[6]<<MSP430系列16位超低功耗单片机实践与系统设计>>
作者: 沈建华 杨艳琴 翟骁曙
出版社: 清华大学出版社
出版日期:2005年4月1日
内容简介
本书以TI公司的MSP430系列16位超低功耗单片机为核心,介绍了IAR Embedded Workbench V2.10集成开发调试环境的使用方法,特别是MSP430 C语言特有的扩展特性、宏文件和本征函数说明,以及MSP430-TEST44X开发实验板的硬件结构和原理,详细描述了MSP430的10个基础实验的目的、原理、内容、步骤和参考程序。并从单片机实际应用出发,列举了多个以MSP430单片机为核心的系统设计、应用案例。
本书读者需要有单片机和C语言基础。有关MSP430系统列单片机的结构原理可参考作者所编着的《MSP430系列16位超低功耗单片机原理与应用》一书。
本书配光盘一张,内容包含所有基础实验的汇编和C源程序代码,还有USB430各斜度计的源代码。
本书可作为高等院校计算机、电子、自动化类专业MSP430单片机课程的实验指导书,而且特别适合有单片机技术基础的广大工程技术人员作为应用设计参考用书。
[7]<<MSP430系列单片机实用C语言程序设计>>
作者: 张晞 王德银 张晨
出版社: 人民邮电出版社
出版日期:2005年09月01日
本书简介:
本书从应用角度出发,主要介绍MSP430的硬件基础部分和IAR公司的MSP430 C编译器EW430,并对MSP430中的各功能模块给出了应用实例。这些实例程序按照结构化编写,经作者的封装后,读者在开发中只需稍加修改即可直接调用。
书中还介绍了MSP430的几种典型应用,如软件模拟串行口、在线刷新FLASH、实现中断嵌套等,并为其编写了完整代码,读者完全可以将其直接组合在自己的项目中。书中还讲解了单片机领域编写程序的规范、程序结构的安排以及如何提高编码效率等实际应用中的问题。随书光盘中包括了本书的所有程序代码。
[8]<<MSP430单片机C语言应用程序设计实例精讲>>
作者: 秦龙
出版社:电子工业出版社
出版日期:2006年5月
内容简介:
本书通过大量的典型实例形式,详细介绍了MSP430单片机各种C语言应用专题程序设计的流程、方法、技巧及设计理念。全书共分31章,其中第1章简单介绍了开发MSP430的C语言的基础知识,第2章至第31章为本书的重点,通过30个典型的C语言专题应用实例,详细介绍了MSP430单片机的各种应用开发和使用技术。实例丰富,代表性强,涉及领域广,每个例子都有具体的硬件电路设计和程序设计,对读者有较高的学习和参考价值。
全书语言简洁,层次清晰,本书的所有程序代码都使用C语言实现,简单易学、易懂。本书比较适合计算机、自动化、电子及硬件等相关专业的院校学生进行学习,同时也可供从事单片机开发的科研设计人员参考使用。
本书配有一张光盘,光盘里包括了书中所有的程序代码,读者可参考借鉴,物超所值。
[9]<<本书针对MSP430F44x系列的晶片做入门>>
作者: 谢文哲、吴贤财、 林荣三着
出版社:中国台湾省沧海书局
出版日期:2003年8月
内容简介:
MSP430系列提供了不同的记忆体容量、类比和各种功能模组的组合,由于采完全相同的指令集和记忆体结构,所以各位读者看完本书后,可根据自己开发产品的需要,选择最符合自己需求的晶片,以降低生产成本,完全不必因为选择不同规格晶片而需从头学起。德州仪器工业股份有限公司更为MSP430开发了价格非常低廉好用的整合性发展环境MSP430 Flash Emulation Tool (FETTM),学起单晶片不再是那么因难的事
⑤ 单片机C语言程序设计实训100例--基于AVR+PROTEUS仿真
不是还需要proteus软件么
⑥ 单片机C语言程序设计实训100例:基于8051+Proteus仿真的目录
第1章8051单片机C语言程序设计概述1
1.1 8051单片机引脚1
1.2 数据与程序内存2
1.3 特殊功能寄存器3
1.4 外部中断、定时/计数器及串口应用4
1.5 有符号与无符号数应用、数位分解、位操作5
1.6 变量、存储类型与存储模式7
1.7 数组、字符串与指针9
1.8 流程控制11
1.9 可重入函数和中断函数11
1.10 C语言在单片机系统开发中的优势12
第2章Proteus操作基础13
2.1 Proteus操作界面简介13
2.2 仿真电路原理图设计14
2.3 元件选择16
2.4 调试仿真20
2.5 Proteus与? V3的联合调试21
第3章 基础程序设计22
3.1 闪烁的LED 22
3.2 从左到右的流水灯23
3.3 左右来回循环的流水灯25
3.4 花样流水灯26
3.5 LED模拟交通灯28
3.6 单只数码管循环显示0~9 30
3.7 8只数码管滚动显示单个数字31
3.8 8只数码管显示多个不同字符33
3.9 数码管闪烁显示35
3.10 8只数码管滚动显示数字串36
3.11 K1~K4控制LED移位37
3.12 K1~K4按键状态显示39
3.13 K1~K4分组控制LED 40
3.14 K1~K4控制数码管移位显示42
3.15 K1~K4控制数码管加减演示44
3.16 4×4键盘矩阵控制条形LED显示46
3.17 数码管显示4×4键盘矩阵按键48
3.18 开关控制LED 51
3.19 继电器控制照明设备52
3.20 数码管显示拨码开关编码53
3.21 开关控制报警器55
3.22 按键发音56
3.23 播放音乐58
3.24 INT0中断计数59
3.25 INT0中断控制LED 61
3.26 INT0及INT1中断计数63
3.27 TIMER0控制单只LED闪烁66
3.28 TIMER0控制流水灯68
3.29 TIMER0控制4只LED滚动闪烁70
3.30 T0控制LED实现二进制计数72
3.31 TIMER0与TIMER1控制条形LED 73
3.32 10s的秒表75
3.33 用计数器中断实现100以内的按键计数77
3.34 10 000s以内的计时程序78
3.35 定时器控制数码管动态显示81
3.36 8×8 LED点阵屏显示数字83
3.37 按键控制8×8 LED点阵屏显示图形85
3.38 用定时器设计的门铃87
3.39 演奏音阶89
3.40 按键控制定时器选播多段音乐91
3.41 定时器控制交通指示灯93
3.42 报警器与旋转灯96
3.43 串行数据转换为并行数据98
3.44 并行数据转换为串行数据99
3.45 甲机通过串口控制乙机LED闪烁101
3.46 单片机之间双向通信104
3.47 单片机向主机发送字符串108
3.48 单片机与PC串口通信仿真110
第4章 硬件应用115
4.1 74LS138译码器应用115
4.2 74HC154译码器应用116
4.3 74HC595串入并出芯片应用118
4.4 用74LS148扩展中断121
4.5 I2C-24C04与蜂鸣器123
4.6 I2C-24C04与数码管127
4.7 用6264扩展内存132
4.8 用8255实现接口扩展134
4.9 555的应用136
4.10 BCD译码数码管显示数字138
4.11 MAX7221控制数码管动态显示139
4.12 1602字符液晶滚动显示程序142
4.13 1602液晶显示的DS1302实时时钟148
4.14 12864LCD图像滚动显示154
4.15 160128LCD图文演示160
4.16 2×20串行字符液晶显示167
4.17 开关控制12864LCD串行模式显示169
4.18 ADC0832模数转换与显示175
4.19 用ADC0808控制PWM输出178
4.20 ADC0809模数转换与显示181
4.21 用DAC0832生成锯齿波183
4.22 用DAC0808实现数字调压184
4.23 PCF8591模数与数模转换186
4.24 DS1621温度传感器输出显示193
4.25 DS18B20温度传感器输出显示198
4.26 正反转可控的直流电动机203
4.27 正反转可控的步进电动机205
4.28 键控看门狗208
第5章 综合设计211
5.1 可以调控的走马灯211
5.2 按键选播电子音乐214
5.3 可演奏的电子琴216
5.4 1602LCD显示仿手机键盘按键字符219
5.5 1602LCD显示电话拨号键盘按键222
5.6 12864LCD显示计算器键盘按键225
5.7 数码管随机模拟显示乘法口诀231
5.8 1602LCD随机模拟显示乘法口诀234
5.9 用数码管设计的可调式电子钟236
5.10 用1602LCD设计的可调式电子钟239
5.11 用DS1302与数码管设计的可调式电子表243
5.12 用DS1302与1602LCD设计的可调式电子日历与时钟247
5.13 用DS1302与12864LCD设计的可调式中文电子日历252
5.14 用PG12864LCD设计的指针式电子钟257
5.15 高仿真数码管电子钟266
5.16 1602LCD显示的秒表269
5.17 数码管显示的频率计274
5.18 字符液晶显示的频率计276
5.19 用ADC0832调节频率输出279
5.20 用ADC0832设计的两路电压表281
5.21 用数码管与DS18B20设计的温度报警器284
5.22 用1602LCD与DS18B20设计的温度报警器289
5.23 数码管显示的温控电动机295
5.24 温度控制直流电动机转速298
5.25 用ADC0808设计的调温报警器303
5.26 160128LCD中文显示温度与时间306
5.27 用DAC0808设计的直流电动机调速器309
5.28 160128液晶中文显示ADC0832两路模数转换结果310
5.29 160128液晶曲线显示ADC0832两路模数转换结果313
5.30 串口发送数据到2片8×8点阵屏滚动显示315
5.31 用74LS595与74LS154设计的16×16点阵屏318
5.32 用8255与74LS154设计的16×16点阵屏320
5.33 8×8 LED点阵屏仿电梯数字滚动显示323
5.34 用24C04与1602LCD设计电子密码锁325
5.35 光耦控制点亮和延时关闭照明设备331
5.36 12864LCD显示24C08保存的开机画面334
5.37 12864LCD显示EPROM2764保存的开机画面340
5.38 160128液晶显示当前压力342
5.39 单片机系统中自制硬件字库的应用344
5.40 用8051与1601LCD设计的整数计算器349
5.41 模拟射击训练游戏357
参考文献363
⑦ 单片机定时器中断程序,C语言程序设计
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
uchar keyval;
uchar led1=0xfe,led2=0x55,led3=0x0f;
sbit key=P1^0;
void t0isr() interrupt 1
{
TH0=(65536-60000)/256;
TL0=(65536-60000)%256;
switch(keyval)
{
case 1:
P0=led1;
led1=_crol_(led1,1)
break;
case 2:
P0=led2;
led2=~led2;
break;
case 3:
P0=led3;
led3=~led3;
break;
default:break;
}
}
main()
{
TMOD=0x01;
TH0=(65536-60000)/256;
TL0=(65536-60000)%256;
TR0=1;
ET0=1;
EA=1;
while(1)
{
if(key==0)
{
while(key==0);
keyval++;
keyval%=4;
}
}
}
⑧ 51单片机中用4个开关控制4个发光二极管的C语言程序设计
#include<reg51.h>
sbitkey1=P1^0;
sbitkey2=P1^1;
sbitkey3=P1^2;
sbitkey4=P1^3;
sbitled1=P1^4;
sbitled2=P1^5;
sbitled3=P1^6;
sbitled4=P1^7;
main()
{
while(1)
{
漏凯led1=key1;
仔饥led2=key2;
led3=key3;
念搜返led4=key4;
}
}
⑨ 单片机C语言程序设计实训100例:基于PIC+Proteus仿真的编辑推荐
《单片机C语言程序设计实训100例:基于PIC+Proteus仿真》:一本凝聚了作者近两年艰苦写作经历的书籍
一本忠实的读者们期待已久的单片机技术开发书籍
一本涵盖PIC单片机C语言程序设计大量核心源码的书籍
一本带领你进入PIC单片机C语言程序设计神奇之旅的书籍
一本可作为“代码宝典或“代码手册”使用的书籍
◆丰富的C语言源程序全部基于MPLAB IDE+H1—TECHPICC/PICC 1 8/MCC 1 8开发环境
◆基于Proteus提供的实物电路案例仿真解决了实验条件欠缺的问题
◆逐步递进的案例设计及难易适中的实训目标引领读者进入炉火纯青的程序设计境界
◆基础设计类案例涵盖PIC单片机最基本的端口编程、定时/计数器应用、中断程序设计、A/D转换、CCP程序设计、EEPRoM、FIash、USART及看门狗程序设计等
◆硬件应用类案例涉及单片机存储器扩展、接口扩展、译码、编码、驱动、光电、机电、传感器、I2C及SP}接口器件、MMC、ATA、遥控等器件等
◆综合设计类案例涉及消费类电子产品、仪器仪表及智能控制设备等相关技术,部分案例涉及IRDA/RS-485/M0dbus/CAN/Ethernet等技术应用
⑩ 单片机C语言程序设计
按你的程序的结构,不做大的变动,又能理解的方法:
四个程序合并成一个,当然就只能有一个主程序了,一个while(1)了,凡是while(1)以上的程序只保留一个就行了。四个程序的while(1)以下的都合并写在一个while(1)下面,分为四段。
有四个按键,判断按键被按下的程序会写吧?
那判断每个按键的if 语句的下面分别放那上面说的四段程序就行了。