学习使用单片机就是理解单片机硬件结构,以及内部资源的应用,在汇编或C语言中学会各种功能的初始化设置,以及实现各种功能的程序编制。
第一步:数字I/O的使用
使用按钮输入信号,发 光二极管显示输出电平,就可以学习引脚的数字I/O功能,在按下某个按钮后,某发光二极管发亮,这就是数字电路中组合逻辑的功能,虽然很简单,但是可以学 习一般的单片机编程思想,例如,必须设置很多寄存器对引脚进行初始化处理,才能使引脚具备有数字输入和输出输出功能。每使用单片机的一个功能,就要对控制该功能的寄存器进行设置,这就是单片机编程的特点,千万不要怕麻烦,所有的单片机都是这样。
第二步:定时器的使用
学会定时器的使用,就 可以用单片机实现时序电路,时序电路的功能是强大的,在工业、家用电气设备的控制中有很多应用,例如,可以用单片机实现一个具有一个按钮的楼道灯开关,该开关在按钮按下一次后,灯亮3分钟后自动灭,当按钮连续按下两次后,灯常亮不灭,当按钮按下时间超过2s,则灯灭。数字集成电路可以实现时序电路,可编程 逻辑器件(PLD)可以实现时序电路,可编程控制器(PLC)也可以实现时序电路,但是只有单片机实现起来最简单,成本最低。 定时器的使用是非常重要的,逻辑加时间控制是单片机使用的基础。
第三步:中断
单片机的特点是一段程 序反复执行,程序中的每个指令的执行都需要一定的执行时间,如果程序没有执行到某指令,则该指令的动作就不会发生,这样就会耽误很多快速发生的事情,例如,按钮按下时的下降沿。要使单片机在程序正常运行过程中,对快速动作做出反应,就必须使用单片机的中断功能,该功能就是在快速动作发生后,单片机中断正 常运行的程序,处理快速发生的动作,处理完成后,在返回执行正常的程序。中断功能使用中的困难是需要精确地知道什么时候不允许中断发生(屏蔽中断)、什么时候允许中断发生(开中断),当然也可以监视多个事情,形象的比喻,中断功能使单片机具有吃着碗里的,看着锅里的功能。 以上三步学会,就相当于降龙十八掌武功,会了三掌了,可以勉强护身。
第四步:与PC机进行RS232通信
单片机都有USART接口,特别是MSP430系列中很多型号,都具有两个USART接口。USART接口不能直接与PC机的RS232接口连接,它们之间的逻辑电平不同,需要使用一个MAX3232芯片进行电平转换。 USART接口的使用是非常重要的,通过该接口,可以使单片机与PC机之间交换信息,虽然RS232通信并不先进,但是对于接口的学习是非常重要的。正确使用USART接口,需要学习通信协议,PC机的RS232接口编程等等知识。试想,单片机实验板上的数据显示在PC机监视器上,而PC机的键盘信号可以在单片机实验板上得到显示,将是多么有意思的事情啊!
第五步:学会A/D转换
MAP430单片机带有多通道12位A/D转换器,通过这些A/D转换器可以使单片机操作模拟量,显示和检测电压、电流等信号。学习时注意模拟地与数字地、参考电压、采样时间,转换速率,转换误差等概念。 使用A/D转换功能的简单的例子是设计一个电压表。
第六步:学会PCI、I2C接口和液晶显示器接口
这些接口的使用可以使单片机更容易连接外部设备,在扩展单片机功能方面非常重要。
第七步:学会比较、捕捉、PWM功能
这些功能可以使单片机能够控制电机,检测转速信号,实现电机调速器等控制起功能。
如果以上七步都学会,就可以设计一般的应用系统,相当于学会十招降龙十八掌,可以出手攻击了。
第八步:学习USB接口、TCP/IP接口、各种工业总线的硬件与软件设计
学习USB接口、TCP/IP接口、各种工业总线的硬件与软件设计是非常重要的,因为这是当前产品开发的发展方向。
到此为止,相当于学会15招降龙十八掌,但还不到打遍天下无敌手的境界。即使如此,也算是单片机大虾了。
关键字:单片机 指令
引用地址:
单片机秘籍之降龙十五掌
推荐阅读最新更新时间:2024-03-16 14:58
串行E2PROMAT 24C512在单片机中应用
1概述 近年来,以单片机为核心构成的智能仪器仪表与数据采集系统获得了愈来愈广泛的应用。传统的数据存储方法均是通过总线型非易失数据存储器来保存采集的数据。随着单片机技术的不断发展及各种非总线型单片机的不断涌现,采用非总线型单片机并配合大容量串行E2PROM构成的数据存储系统,将是一种非常好的数据存储方法。该方法一方面可提高系统的可靠性,另一方面又可降低系统成本。 AT24C512是ATMEL公司新近推出的具有I2C总线容量达512Kbit(64K×8)的E2PROM,该芯片的主要特性如下:存储容量为 65536byte;与100kHz、400kHz、1MHzI2C总线兼容;100000次编程/擦写周期;单电源、读写电压为 1
[单片机]
一种基于单片机的实用在线式UPS电路详解
UPS(UninterruptiblePowerSystem)交流 电源 越来越广泛地应用于国民经济的各个领域。本文将介绍一种实用的简单在线式UPS。 UPS电源 的基本结构 将220V电网电压经全桥整流提供直流是实际应用中最为广泛的变流方案,但会使电网产生严重畸变的非正弦电流而危害电网。较为理想的方法是采用功率因数校正措施。控制器采用功率因数校正控制芯片UC3855A/B。 市电-- 蓄电池 切换电路 它由两个迟滞比较器组成,市电经过整流,分压与由5V基准电压分压得到的电压相比较,输出接到51单片机4脚。 (1)当市电电压大于170V 51单片机当检测到4脚电平为高电平,市电工作指示灯亮起
[电源管理]
基于单片机控制的程控有源滤波器电路
有源滤波器广泛应用于数字信号处理、通信、自动控制领域,但设计可变宽频带有源滤波器则比较困难。利用单片机控制参数可编程的双二阶通用开关电容有源滤波器,精确设置有源滤波器的中心频率f0,品质因数Q及有源滤波器的工作方式。 2 开关电容有源滤波器工作原理 开关电容有源滤波器的基本原理是在电路两节点之间接具有高速开关的电容器,等效于两节点之间连接一只电阻。图1(a)是一个有源RC积分器,图1(b)是采用一只接地电容C1和CMOS开关T1、T2替代输入电阻R1。图1(c)是不重叠的两相时钟脉冲,用于驱动T1、T2。时钟频率fCLK高于信号频率。当φ1为高电平时,T1导通(视短路)而T2截止(视开路),此时C1与输人信号V1相连并充电
[工业控制]
平凡单片机教学 第五讲 单片机的内外部结构分析(四)
1.第三个实验 上两次我们做过两个实验,都是让P1.0这个引脚使灯亮,我们可以设想:既然P1.0可以让灯亮,那么其它的引脚可不可以呢?看一下图1,它是8031单片机引脚的说明,在P1.0旁边有P1.1,P1.2 .P1.7,它们是否都可以让灯亮呢?除了以P1开头的外,还有以P0,P2,P3开头的,数一下,一共是32个引脚,前面我们以学过7个引脚,加上这32个这39个了。它们都以P字开头,只是后面的数字不一样,它们是否有什么联系呢?它们能不能都让灯亮呢?在我们的实验板上,除了P10之外,还有P11P17都与LED相连,下面让我们来做一个实验,程序如下: MAIN: MOV P1,#0FFH LCALL DELAY
[单片机]
stm8s003MCU_PWM_引脚功能配置
最近在使用stm8s003MCU进行一款LED灯产品的开发。我使用的是TIM2的PWM输出功能,使用TIM2_CHANNEL3,PA3引脚复用为TIM2_CH3。 一、如何复用PA3引脚为TIM2_CH3 stm8MCU的引脚复用功能并不像我之前使用过的NXP的MCU或者51MCU。之前使用的NXP MCU引脚有专用的引脚功能配置寄存器,可以通过配置寄存器将引脚配置为不同功能。stm8MCU的引脚有main function(after reset)即复位后引脚的主功能,另外,引脚还有个default alternet function,比如:PA3的default alternet function就是TIM2_CH3。若要
[单片机]
51单片机DS18B20温度传感四位数码管显示报警
仿真原理图如下 全部资料分享,可设置温度报警的上下限,5641四位共阳数码管显示温度,自己曾经做的设计,实测可行,提供给有需要的人 单片机源程序如下: #include AT89X52.h #define uint unsigned int #define uchar unsigned char //宏定义 #define SET P3_1 //定义调整键 #define DEC P3_2 //定义减少键 #define ADD P3_3 //定义增加键 #define BEEP P3_6 //定义蜂
[单片机]
avr单片机八位流水灯程序
八位流水灯程序 单片机源程序如下: #include iom16v.h #define uint unsigned int #define uchar unsigned char void Delay_ms(uint k) { uint i,j; for(;k 0;k--) for(i=142;i 0;i--) for(j=2;j 0;j--); } void port_init(void) { DDRD=0xff; PORTD=0xff; } void main(void) { uchar temp,i; port_i
[单片机]
定时器中断是什么意思,定时器中断的工作原理
定时器中断是由单片机中的定时器溢出而申请的中断。51单片机中有两个定时器T0和T1。STM32中共有11个定时器。 一、定时器中断是什么意思 定时器中断是由单片机中的定时器溢出而申请的中断。 51单片机中有两个定时器T0和T1: (1)TF0:定时器T0溢出中断请求。当定时器TO产生溢出时,TO中断请求标志TF0置1,请求中断处理。 (2)TF1:定时器T1溢出中断请求。当定时器Tl产生溢出时,T1中断请求标志TF1置1,请求中断处理。 Stm32共有11个定时器: 1、两个高级定时器:TIM1、TIM8-------------------------APB2 2、四个通用定时器:TIM2~TIM5-------------
[单片机]