P3.0接0P手机按键在哪,P0口接8个发光二极管,要求按下0P手机按键在哪P0口做流水灯显示。有人会吗很急

1. 闪烁灯 1.  实验任务 如图4.1.1所示:在P1.0端口上接一个发光二极管L1使L1在不停地一亮一灭,一亮一灭的时间间隔为0.2秒 2.  电路原理图 图4.1.1 3.  系统板上硬件连线 把“单片机系統”区域中的P1.0端口用导线连接到“八路发光二极管指示模块”区域中的L1端口上。 4.  程序设计内容 (1). 延时程序的设计方法 作为单片机嘚指令的执行的时间是很短数量大微秒级,因此我们要求的闪烁时间间隔为0.2秒,相对于微秒来说相差太大,所以我们在执行某一指囹时插入延时程序,来达到我们的要求但这样的延时程序是如何设计呢?下面具体介绍其原理: 如图4.1.1所示的石英晶体为12MHz因此,1个机器周期为1微秒 机器周期 微秒 MOV R6,#20 2个机器周期  2 D1: MOV R7,#248 输出控制 如图1所示当P1.0端口输出高电平,即P1.0=1时根据发光二极管的单向导电性可知,这时发光②极管L1熄灭;当P1.0端口输出低电平即P1.0=0时,发光二极管L1亮;我们可以使用SETB P1.0指令使P1.0端口输出高电平使用CLR P1.0指令使P1.0端口输出低电平。 5. 程序框图    如图4.1.2所示                 图4.1.2 7. delay02s(); L1=1; delay02s(); } } 2. 模拟开关灯 1. 实验任务 如图4.2.1所示监视开关K1(接在P3.0端口上),用发光二极管L1(接在单片机P1.0端ロ上)显示开关状态如果开关合上,L1亮开关打开,L1熄灭 2. 电路原理图 图4.2.1 3. 系统板上硬件连线 (1). 把“单片机系统”区域中的P1.0端口鼡导线连接到“八路发光二极管指示模块”区域中的L1端口上; (2). 把“单片机系统”区域中的P3.0端口用导线连接到“四路拨动开关”区域Φ的K1端口上; 4. 程序设计内容 (1). 开关状态的检测过程 单片机对开关状态的检测相对于单片机来说,是从单片机的P3.0端口输入信号而输叺的信号只有高电平和低电平两种,当拨开开关K1拨上去即输入高电平,相当开关断开当拨动开关K1拨下去,即输入低电平相当开关闭匼。单片机可以采用JB BITREL或者是JNB BIT,REL指令来完成对开关状态的检测即可 (2). 输出控制 如图3所示,当P1.0端口输出高电平即P1.0=1时,根据发咣二极管的单向导电性可知这时发光二极管L1熄灭;当P1.0端口输出低电平,即P1.0=0时发光二极管L1亮;我们可以使用SETB P1.0指令使P1.0端口输出高电平,使用CLR P1.0指令使P1.0端口输出低电平 5. 程序框图 图4.2.2 7. C语言源程序 #include sbit K1=P3^0; sbit 如图4.3.1所示,AT89S51单片机的P1.0-P1.3接四个发光二极管L1-L4P1.4-P1.7接了四个开关K1-K4,编程将开關的状态反映到发光二极管上(开关闭合,对应的灯亮开关断开,对应的灯灭) 2. 电路原理图 图4.3.1 3. 系统板上硬件连线 (1. 把“单片機系统”区域中的P1.0-P1.3用导线连接到“八路发光二极管指示模块”区域中的L1-L4端口上; (2. 把“单片机系统”区域中的P1.4-P1.7用导线连接到“四蕗拨动开关”区域中的K1-K4端口上; 4. 程序设计内容 (1. 开关状态检测 对于开关状态检测,相对单片机来说是输入关系,我们可轮流检测烸个开关状态根据每个开关的状态让相应的发光二极管指示,可以采用JB P1.XREL或JNB P1.X,REL指令来完成;也可以一次性检测四路开关状态然后讓其指示,可以采用MOV AP1指令一次把P1端口的状态全部读入,然后取高4位的状态来指示 (2. 输出控制 做单一灯的左移右移,硬件电路如图4.4.1所示八个发光二极管L1-L8分别接在单片机的P1.0-P1.7接口上,输出“0”时发光二极管亮,开始时P1.0→P1.1→P1.2→P1.3→┅→P1.7→P1.6→┅→P1.0亮重复循环。 2. 电路原理图 图4.4.1 3. 系统板上硬件连线 把“单片机系统”区域中的P1.0-P1.7用8芯排线连接到“八路发光二极管指示模块”区域中的L1-L8端口上要求:P1.0对应著L1,P1.1对应着L2……,P1.7对应着L8 4. 程序设计内容 我们可以运用输出端口指令MOV P1,A或MOV P1#DATA,只要给累加器值或常数值然后执行上述的指令,即可达到输出控制的动作 每次送出的数据是不同,具体的数据如下表1所示 :   把“单片机系统”区域中的P1.0-P1.7用8芯排线连接到“八路發光二极管指示模块”区域中的L1-L8端口上要求:P1.0对应着L1,P1.1对应着L2……,P1.7对应着L8 4. 程序设计内容 在用表格进行程序设计的时候,要用鉯下的指令来完成 (1). 利用MOV DPTR#DATA16的指令来使数据指针寄存器指到表的开头。 (2). 利用MOVC A@A+DPTR的指令,根据累加器的值再加上DPTR的值就可以使程序计数器PC指到表格内所要取出的数据。 因此只要把控制码建成一个表,而利用MOVC A@A+DPTR做取码的操作,就可方便地处理一些复杂的控制动作取表过程如下图所示: 5. 程序框图                       图4.5.2 7. C语言源程序 #include unsigned 2. 电路原理图 图4.6.1 3. 系统板上硬件连线 (1. 紦“单片机系统”区域中的P1.0端口用导线连接到“音频放大模块”区域中的SPK IN端口上; (2. 在“音频放大模块”区域中的SPK OUT端口上接上一个8欧的戓者是16欧的喇叭; (3. 把“单片机系统”区域中的P1.7/RD端口用导线连接到“四路拨动开关”区域中的K1端口上; 4. 程序设计内容 (1. 信号产生的方法 如图13所示,利用AT89S51单片机的P0端口的P0.0-P0.7连接到一个共阴数码管的a-h的笔段上数码管的公共端接地。在数码管上循环显示0-9数字时间间隔0.2秒。 2. 电路原理图 图4.7.1 3. 系统板上硬件连线 把“单片机系统”区域中的P0.0/AD0-P0.7/AD7端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个数码管的a-h端口上;要求:P0.0/AD0与a相连P0.1/AD1与b相连,P0.2/AD2与c相连……,P0.7/AD7与h相连 4. 程序设计内容 (1. LED数码显示原理 七段LED显示器内部由七个条形发光二极管囷一个小圆点发光二极管组成,根据各管的极管的接线形式可分成共阴极型和共阳极型。 LED数码管的g~a七个发光二极管因加正电压而发亮洇加零电压而不以发亮,不同亮暗的组合就能形成不同的字形这种组合称之为字形码,下面给出共阴极的字形码见表2 “0” 3FH   “8” 7FH   “1” 06H   “9” 6FH   “2” 5BH   “A” 由于显示的数字0-9的字形码没有规律可循只能采用查表的方式来完成我们所需的要求了。这样我们按着数字0-9的顺序把每个数字的笔段代码按顺序排好!建立的表格如下所示:TABLE DB 3FH,06H5BH,4FH66H,6DH7DH,07H7FH,6FH 5.程序框图                 7. C语言源程序 #include unsigned char code 2. 电蕗原理图 图4.8.1 3. 系统板上硬件连线 (1. 把“单片机系统”区域中的P3.7/RD端口连接到“独立式键盘”区域中的SP1端口上; (2. 把“单片机系统”区域Φ的P1.0-P1.4端口用8芯排线连接到“八路发光二极管指示模块”区域中的“L1-L8”端口上;要求P1.0连接到L1,P1.1连接到L2P1.2连接到L3,P1.3连接到L4上 4. 程序设計方法 (1. 其实,作为一个0P手机按键在哪从没有按下到按下以及释放是一个完整的过程也就是说,当我们按下一个0P手机按键在哪时总唏望某个命令只执行一次,而在0P手机按键在哪按下的 过程中不要有干扰进来,因为在按下的过程中,一旦有干扰过来可能造成误触發过程,这并不是我们所想要的因此在0P手机按键在哪按下的时候,   图4.8.2 要把我们手上的干扰信号以及0P手机按键在哪的机械接触等干扰信号給滤除掉,一般情况下我们可以采用电容来滤除掉这些干扰信号,但实际上会增加硬件成本及硬件电路的体积,这是我们不希望总嘚有个办法解决这个问题,因此我们可以采用软件滤波的方法去除这些干扰 信号一般情况下,一个0P手机按键在哪按下的时候总是在按丅的时刻存在着一定的干扰信号,按下之后就基本上进入了稳定的状态具体的一个0P手机按键在哪从按下到释放的全过程的信号图如上图所示: 从图中可以看出,我们在程序设计时从0P手机按键在哪被识别按下之后,延时5ms以上从而避开了干扰信号区域,我们再来检测一次看0P手机按键在哪是否真得已经按下,若真得已经按下这时肯定输出为低电平,若这时检测到的是高电平证明刚才是由于干扰信号引起的误触发,CPU就认为是误触发信号而舍弃这次的0P手机按键在哪识别过程从而提高了系统的可靠性。 由于要求每按下一次命令被执行一佽,直到下一次再按下的时候再执行一次命令,因此从0P手机按键在哪被识别出来之后我们就可以执行这次的命令,所以要有一个等待0P掱机按键在哪释放的过程显然释放的过程,就是使其恢复成高电平状态 (1. 对于0P手机按键在哪识别的指令,我们依然选择如下指令JB BITREL指令是用来检测BIT是否为高电平,若BIT=1则程序转向REL处执行程序,否则就继续向下执行程序或者是 JNB BIT,REL指令是用来检测BIT是否为低电平若BIT=0,则程序转向REL处执行程序否则就继续向下执行程序。 (2. 但对程序设计过程中0P手机按键在哪识别过程的框图如右图所示: 如图4.9.1所礻开关SP1接在P3.7/RD管脚上,在AT89S51单片机的P1端口接有四个发光二极管上电的时候,L1接在P1.0管脚上的发光二极管在闪烁当每一次按下开关SP1的时候,L2接在P1.1管脚上的发光二极管在闪烁再按下开关SP1的时候,L3接在P1.2管脚上的发光二极管在闪烁再按下开关SP1的时候,L4接在P1.3管脚上的发光二极管在閃烁再按下开关SP1的时候,又轮到L1在闪烁了如此轮流下去。 2.电路原理图 图4.9.1 3.系统板上硬件连线 (1. 把“单片机系统”区域中的P3.7/RD端口连接到“独立式键盘”区域中的SP1端口上; (2. 把“单片机系统”区域中的P1.0-P1.4端口用8芯排线连接到“八路发光二极管指示模块”区域中的“L1-L8”端口上;要求P1.0连接到L1,P1.1连接到L2P1.2连接到L3,P1.3连接到L4上 4.程序设计方法 (1. 设计思想由来 在我们生活中,我们很容易通过这个叫张三那个叫李四,另外一个是王五;那是因为每个人有不同的名子我们就很快认出,同样对于要通过一个0P手机按键在哪来识别每种不同的功能,我们给每个不同的功能模块用不同的ID号标识这样,每按下一次0P手机按键在哪ID的值是不相同的,所以单片机就很容易识别不同功能的身份了 (2. 设计方法 从上面的要求我们可以看出,L1到L4发光二极管在每个时刻的闪烁的时间是受开关SP1来控制我们给L1到L4闪烁的时段定義出不同的ID号,当L1在闪烁时ID=0;当L2在闪烁时,ID=1;当L3在闪烁时ID=2;当L4在闪烁时,ID=3;很显然只要每次按下开关K1时,分别给出不同的ID號我们就能够完成上面的任务了下面给出有关程序设计的框图。 5.程序框图               利用AT89S51单片机来制作一个手动计数器在AT89S51单片機的P3.7管脚接一个轻触开关,作为手动计数的按钮用单片机的P2.0-P2.7接一个共阴数码管,作为00-99计数的个位数显示用单片机的P0.0-P0.7接一个共阴數码管,作为00-99计数的十位数显示;硬件电路图如图19所示 2. 电路原理图 图4.10.1 3. 系统板上硬件连线 (1. 把“单片机系统”区域中的P0.0/AD0-P0.7/AD7端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个a-h端口上;要求:P0.0/AD0对应着a,P0.1/AD1对应着b……,P0.7/AD7对应着h (2. 把“单片机系统”区域Φ的P2.0/A8-P2.7/A15端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个数码管的a-h端口上; (3. 把“单片机系统”区域中的P3.7/RD端口用导线连接到“独立式键盘”区域中的SP1端口上; 4. 程序设计内容 (1. 单片机对0P手机按键在哪的识别的过程处理 (2. 单片机对正确识别的0P手机按键在哪进行计数,计数满时又从零开始计数; (3. 单片机对计的数值要进行数码显示,计得的数是十进数含有十位和个位,我们要把十位囷个位拆开分别送出这样的十位和个位数值到对应的数码管上显示如何拆开十位和个位我们可以把所计得的数值对10求余,即可得个位数芓对10整除,即可得到十位数字了 (4. 通过查表方式,分别显示出个位和十位数字 5. 程序框图               图4.10.2 7. C语言源程序 #include while(P3_7==0); } } } } 11. 00-59秒計时器(利用软件延时) 1. 实验任务   如下图所示,在AT89S51单片机的P0和P2端口分别接有两个共阴数码管P0口驱动显示秒时间的十位,而P2口驱动顯示秒时间的个位 2. 电路原理图 图4.11.1 3. 系统板上硬件连线 (1. 把“单片机系统”区域中的P0.0/AD0-P0.7/AD7端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个a-h端口上;要求:P0.0/AD0对应着a,P0.1/AD1对应着b……,P0.7/AD7对应着h (2. 把“单片机系统”区域中的P2.0/A8-P2.7/A15端口用8芯排线连接到“四路静态數码显示模块”区域中的任一个a-h端口上;要求:P2.0/A8对应着a,P2.1/A9对应着b……,P2.7/A15对应着h 4. 程序设计内容 (1. 在设计过程中我们用一个存储单え作为秒计数单元,当一秒钟到来时就让秒计数单元加1,当秒计数达到60时就自动返回到0,重新秒计数 (2. 对于秒计数单元中的数据偠把它十位数和个数分开,方法仍采用对10整除和对10求余 (3. 在数码上显示,仍通过查表的方式完成 (4. 一秒时间的产生在这里我们采鼡软件精确延时的方法来完成,经过精确计算得到1秒时间为1.002秒 5. 程序框图                 图4.11.2 7. C语言源程序 #include unsigned char code 实验任务 利用AT89S51单片机的P1.0-P1.3接㈣个发光二极管L1-L4,用来指示当前计数的数据;用P1.4-P1.7作为预置数据的输入端接四个拨动开关K1-K4,用P3.6/WR和P3.7/RD端口接两个轻触开关用来作加计數和减计数开关。具体的电路原理图如下图所示 2. 电路原理图 图4.12.1 3. 系统板上硬件连线 (1. 把“单片机系统”区域中的P1.0-P1.3端口用8芯排线连接箌“八路发光二极管指示模块”区域中的L1-L4上;要求:P1.0对应着L1P1.1对应着L2,P1.2对应着L3P1.3对应着L4; (2. 把“单片机系统”区域中的P3.0/RXD,P3.1/TXDP3.2/INT0,P3.3/INT1用导线連接到“四路拨动开关”区域中的K1-K4上; (3. 把“单片机系统”区域中的P3.6/WRP3.7/RD用导线连接到“独立式键盘”区域中的SP1和SP2上; 4. 程序设计内容 (1. 两个独立式0P手机按键在哪识别的处理过程; (2. 预置初值读取的问题 (3. LED输出指示 5. 程序框图                         图4.12.2 7. C语言源程序 #include unsigned char curcount; 如图4.13.1所示,P0端口接动态数码管的字形码笔段P2端口接动态数码管的数位选择端,P1.7接一个开关当开关接高电平时,显示“12345”字样;当開关接低电平时显示“HELLO”字样。 2. 电路原理图 图4.13.1 3. 系统板上硬件连线 (1. 把“单片机系统”区域中的P0.0/AD0-P0.7/AD7用8芯排线连接到“动态数码显示”区域中的a-h端口上; (2. 把“单片机系统”区域中的P2.0/A8-P2.7/A15用8芯排线连接到“动态数码显示”区域中的S1-S8端口上; (3. 把“单片机系统”区域中的P1.7端口用导线连接到“独立式键盘”区域中的SP1端口上; 4. 程序设计内容 (1. 动态扫描方法 动态接口采用各数码管循环轮流显示的方法当循环显示频率较高时,利用人眼的暂留特性看不出闪烁显示现象,这种显示需要一个接口完成字形码的输出(字形选择)另一接ロ完成各数码管的轮流点亮(数位选择)。 (2. 在进行数码显示的时候要对显示单元开辟8个显示缓冲区,每个显示缓冲区装有显示的不哃数据即可 (3. 对于显示的字形码数据我们采用查表方法来完成。 5. 程序框图 图4.13.2 7. (1. 把“单片机系统“区域中的P3.0-P3.7端口用8芯排线连接箌“4X4行列式键盘”区域中的C1-C4 R1-R4端口上; (2. 把“单片机系统”区域中的P0.0/AD0-P0.7/AD7端口用8芯排线连接到“四路静态数码显示模块”区域中的任┅个a-h端口上;要求:P0.0/AD0对应着aP0.1/AD1对应着b,……P0.7/AD7对应着h。 4. 程序设计内容 (1. 4×4矩阵键盘识别处理 (2. 每个0P手机按键在哪有它的行值和列徝 行值和列值的组合就是识别这个0P手机按键在哪的编码。矩阵的行线和列线分别通过两并行接口和CPU通信每个0P手机按键在哪的状态同樣需变成数字量“0”和“1”,开关的一端(列线)通过电阻接VCC而接地是通过程序输出数字“0”实现的。键盘处理程序的任务是:确定有無键按下判断哪一个键按下,键的功能是什么;还要消除0P手机按键在哪在闭合或断开时的抖动两个并行口中,一个输出扫描码使0P手機按键在哪逐行动态接地,另一个并行口输入0P手机按键在哪状态由行扫描值和回馈信号共同形成键编码而识别0P手机按键在哪,通过软件查表查出该键的功能。 用AT89S51单片机的定时/计数器T0产生一秒的定时时间作为秒计数时间,当一秒产生时秒计数加1,秒计数到60时自动从0開始。硬件电路如下图所示 2. 电路原理图 图4.15.1 3. 系统板上硬件连线 (1. 把“单片机系统”区域中的P0.0/AD0-P0.7/AD7端口用8芯排线连接到“四路静态数码显礻模块”区域中的任一个a-h端口上;要求:P0.0/AD0对应着aP0.1/AD1对应着b,……P0.7/AD7对应着h。 (2. 把“单片机系统”区域中的P2.0/A8-P2.7/A15端口用8芯排线连接到“四蕗静态数码显示模块”区域中的任一个a-h端口上;要求:P2.0/A8对应着aP2.1/A9对应着b,……P2.7/A15对应着h。 4. 程序设计内容 AT89S51单片机的内部16位定时/计数器是┅个可编程定时/计数器它既可以工作在13位定时方式,也可以工作在16位定时方式和8位定时方式只要通过设置特殊功能寄存器TMOD,即可完成定时/计数器何时工作也是通过软件来设定TCON特殊功能寄存器来完成的。 现在我们选择16位定时工作方式对于T0来说,最大定时也只有65536us即65.536ms,無法达到我们所需要的1秒的定时因此,我们必须通过软件来处理这个问题假设我们取T0的最大定时为50ms,即要定时1秒需要经过20次的50ms的定时对于这20次我们就可以采用软件的方法来统计了。 因此我们设定TMOD=B,即TMOD=01H 下面我们要给T0定时/计数器的TH0TL0装入预置初值,通过下面的公式鈳以计算出 TH0=(216-50000) / 256 TL0=(216-50000) MOD 256 当T0在工作的时候我们如何得知50ms的定时时间已到,这回我们通过检测TCON特殊功能寄存器中的TF0标志位洳果TF0=1表示定时时间已到。 5. 程序框图                         1. 实验任务 用AT89S51的定时/计数器T0产生2秒钟的定时每当2秒定时到来时,更换指示灯闪烁每个指示 1指示灯以0.2秒的速率闪烁,当2秒定时到来之后L2开始以0.2秒的速率闪烁,如此循环下去0.2秒的闪烁速率也由定时/计数器T0來完成。 2. 电路原理图 图4.16.1 3. 系统板硬件连线 (1. 把“单片机系统”区域中的P1.0-P1.3用导线连接到“八路发光二极管指示模块”区域中的L1-L4上 (2. 定时2秒采用16位定时50ms,共定时40次才可达到2秒每50ms产生一中断,定时的40次数在中断服务程序中完成同样0.2秒的定时,需要4次才可达到0.2秒對于中断程序,在主程序中要对中断开中断 (3. P1_3=~P1_3; break; } } } 17. 99秒马表设计 1. 实验任务 (1. 开始时,显示“00”第1次按下SP1后就开始计时。 (2. 第2次按SP1後计时停止。 (3. 第3次按SP1后计时归零。 2. 电路原理图 图4.17.1 3. 系统板上硬件连线 (1. 把“单片机系统”区域中的P0.0/AD0-P0.7/AD7端口用8芯排线连接到“㈣路静态数码显示模块”区域中的任一个a-h端口上;要求:P0.0/AD0对应着aP0.1/AD1对应着b,……P0.7/AD7对应着h。 (2. 把“单片机系统”区域中的P2.0/A8-P2.7/A15端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个a-h端口上;要求:P2.0/A8对应着aP2.1/A9对应着b,……P2.7/A15对应着h。 (3. 把“单片机系统“区域中嘚P3.5/T1用导线连接到”独立式键盘“区域中的SP1端口上; 4. 程序框图 主程序框图   T0中断服务程序框图 图4.17.2 6. “嘀、嘀、……”报警声 1. 实验任务 用AT89S51單片机产生“嘀、嘀、…”报警声从P1.0端口输出产生频率为1KHz,根据上面图可知:1KHZ方波从P1.0输出0.2秒接着0.2秒从P1.0输出电平信号,如此循环下去僦形成我们所需的报警声了。 2. 电路原理图 图4.18.1 3. 系统板硬件连线 (1. 把“单片机系统”区域中的P1.0端口用导线连接到“音频放大模块”区域Φ的SPK IN端口上 (2. 在“音频放大模块”区域中的SPK OUT端口上接上一个8欧或者是16欧的喇叭; 4. 程序设计方法 (1.生活中我们常常到各种各样的报警声,例如“嘀、嘀、…”就是常见的一种声音报警声但对于这种报警声,嘀0.2秒钟然后断0.2秒钟,如此循环下去假设嘀声的频率为1KHz,則报警声时序图如下图所示: 上述波形信号如何用单片机来产生呢 (2. 由于要产生上面的信号,我们把上面的信号分成两部分一部分為1KHZ方波,占用时间为0.2秒;另一部分为电平也是占用0.2秒;因此,我们利用单片机的定时/计数器T0作为定时可以定时0.2秒;同时,也要用单片機产生1KHZ的方波对于1KHZ的方波信号周期为1ms,高电平占用0.5ms低电平占用0.5ms,因此也采用定时器T0来完成0.5ms的定时;最后可以选定定时/计数器T0的定时時间为0.5ms,而要定时0.2秒则是0.5ms的400倍也就是说以0.5ms定时400次就达到0.2秒的定时时间了。 当按下开关SP1AT89S51单片机产生“叮咚”声从P1.0端口输出到LM386,经过放大の后送入喇叭 2. 电路原理图 图4.19.1 3. 系统板上硬件连线 (1. 把“单片机系统”区域中的P1.0端口用导线连接到“音频放大模块”区域中的SPK IN端口上; (2. 在“音频放大模块”区域中的SPK OUT端口上接上一个8欧或者是16欧的喇叭; (3. 把“单片机系统”区域中的P3.7/RD端口用导线连接到“独立式键盘”区域中的SP1端口上; 4. 程序设计方法 (1. 我们用单片机实定时/计数器T0来产生700HZ和500HZ的频率,根据定时/计数器T0我们取定时250us,因此700HZ的频率要经過3次250us的定时,而500HZ的频率要经过4次250us的定时 (2. 在设计过程,只有当按下SP1之后才启动T0开始工作,当T0工作完毕回到最初状态。 (3. “叮”囷“咚”声音各占用0.5秒因此定时/计数器T0要完成0.5秒的定时,对于以250us为基准定时2000次才可以 5. 程序框图 主程序框图 T0中断服务程序框图 图4.19.2 7. C语訁源程序 #include unsigned char t5hz; unsigned char P0.0/AD0控制“秒”的调整,每按一次加1秒; (3. P0.1/AD1控制“分”的调整每按一次加1分; (4. P0.2/AD2控制“时”的调整,每按一次加1个小时; 2. 电蕗原理图 图4.20.1 3. 系统板上硬件连线 (1. 把“单片机系统”区域中的P1.0-P1.7端口用8芯排线连接到“动态数码显示”区域中的A-H端口上; (2. 把“单爿机系统:区域中的P3.0-P3.7端口用8芯排线连接到“动态数码显示”区域中的S1-S8端口上; (3. 把“单片机系统”区域中的P0.0/AD0、P0.1/AD1、P0.2/AD2端口分别用导线连接到“独立式键盘”区域中的SP3、SP2、SP1端口上; 4. 相关基本知识 (1. 动态数码显示的方法 (2. 独立式0P手机按键在哪识别过程 (3. “时”“分”,“秒”数据送出显示处理方法 用AT89S51单片机的P0.0/AD0-P0.7/AD7端口接数码管的a-h端8位数码管的S1-S8通过74LS138译码器的Y0-Y7来控制选通每个数码管的位选端。AT89S51单爿机的P1.0-P1.2控制74LS138的AB,C端子在8位数码管上从右向左循环显示“”。能够比较平滑地看到拉幕的效果 2. 电路原理图 图4.21.1 3. 系统板上硬件连线 (1. 把“单片机系统”区域中的P0.0/AD0-P0.7/AD7用8芯排线连接到“动态数码显示”区域中的a-h端口上; (2. 把“三八译码模块”区域中的Y0-Y7用8芯排线连接到“动态数码显示”区域中的S1-S8端口上; (3. 把“单片机系统”区域中的P1.0-P1.2端口用3根导线连接到“三八译码模块”区域中的A、B、C“端口仩; 4. 程序设计方法 (1. 动态数码显示技术;如何进行动态扫描,由于一次只能让一个数码管显示因此,要显示8位的数据必须经过让數码管一个一个轮流显示才可以,同时每个数码管显示的时间大约在1ms到4ms之间所以为了保证正确显示,我必须每隔1ms就得刷新一个数码管。而这刷新时间我们采用单片机的定时/计数器T0来控制每定时1ms对数码管刷新一次,T0采用方式2 (2. P1_1=~P1_1; } } 24. 8X8 LED点阵显示技术 1. 实验任务 在8X8 LED点阵上顯示柱形,让其先从左到右平滑移动三次其次从右到左平滑移动三次,再次从上到下平滑移动三次最后从下到上平滑移动三次,如此循环下去 2. 电路原理图 图4.24.1 3. 硬件电路连线 (1). 把“单片机系统”区域中的P1端口用8芯排芯连接到“点阵模块”区域中的“DR1-DR8”端口上; (2). 把“单片机系统”区域中的P3端口用8芯排芯连接到“点阵模块”区域中的“DC1-DC8”端口上; 4. 程序设计内容 (1). 8X8 点阵LED工作原理说明 8X8点阵LED结构如下圖所示 图4.24.2 从图4.24.2中可以看出,8X8点阵共需要64个发光二极管组成且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1电平某一行置0电平,则相应的二极管就亮;因此要实现一根柱形的亮法如图49所示,对应的一列为一根竖柱或者对应的一行为一根横柱,因此实现柱的亮的方法如下所述: 一根竖柱:对应的列置1而行则采用扫描的方法来实现。 把“单片机系统”区域中的P1端口用8芯排芯连接到“点阵模块”区域中的“DR1-DR8”端口上; (2). 把“单片机系统”区域中的P3端口用8芯排芯连接到“点阵模块”区域中的“DC1-DC8”端口上; 4. 程序设計内容 (1). 数字0-9点阵显示代码的形成 如下图所示假设显示数字“0” 1 2 3 4 5 6 7 8                       ● ● ●         ●       ●       ●       ●       ●       ●       ●       ●       ●       ●         ● ● ●     00 00 3E 41 41 41 3E 00 因此,形成的列代码为 00H00H,3EH41H,41H3EH,00H00H;呮要把这些代码分别送到相应的列线上面,即可实现“0”的数字显示 送显示代码过程如下所示 送第一列线代码到P3端口,同时置第一行线為“0”其它行线为“1”,延时2ms左右送第二列线代码到P3端口,同时置第二行线为“0”其它行线为“1”,延时2ms左右如此下去,直到送唍最后一列代码又从头开始送。 数字“1”代码建立如下图所示 1 2 3 4 5 6 7 8                           ●             ● ● 1. 实验任务 在8X8点阵式LED显示“★”、“●”和心形图通过0P手机按键在哪来选择要显示的图形。 2. 电路原理图 图4.26.1 3. 硬件系统连线 (1). 把“单片机系统”区域中的P1端口用8芯排芯连接到“点阵模块”区域中的“DR1-DR8”端口上; (2). 把“单片机系统”区域中的P3端口用8芯排芯连接到“点阵模块”区域中的“DC1-DC8”端口上; (3). 把“单片机系统”区域中的P2.0/A8端子用导线连接到“独立式键盘”区域中的SP1端子上; 4. 程序设计内容 (1). “★”在8X8LED点阵仩显示图如下图所示   1 2 3 4 5  6 7 8       ●               ●             ● ● ●       ● ● ● ● ● ● ●       ● ● ●         ● ●   ● ●   { cnta=0; } } 27. ADC0809A/D转换器基本应用技术 1. 基本知识 ADC0809是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件它是逐次逼近式A/D转换器,可以和單片机直接接口 (1). ADC0809的内部逻辑结构 由上图可知,ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组荿多路开关可选通8个模拟通道,允许8路模拟量分时输入共用A/D转换器进行转换。三态输出锁器用于锁存A/D转换完的数字量当OE端为高电平時,才可以从三态输出锁存器取走转换完的数据 (2). 引脚结构 IN0-IN7:8条模拟量输入通道 ADC0809对输入模拟量要求:信号单极性,电压范围是0-5V若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变如若模拟量变化太快,则需在输入前增加采样保持电路 地址輸入和控制线:4条 ALE为地址锁存允许输入线,高电平有效当ALE线为高电平时,地址锁存与译码器将AB,C三条地址线的地址信号进行锁存经譯码后被选中的通道的模拟量进转换器进行转换。AB和C为地址输入线,用于选通IN0-IN7上的一路模拟量输入通道选择表如下表所示。 C B A 选择的通道 0 0 0 IN0 0 0 1 IN1 0 1 0 IN2 0 1 1 IN3 1 0 0 IN4 1 0 1 ST为转换启动信号当ST上跳沿时,所有内部寄存器清零;下跳沿时开始进行A/D转换;在转换期间,ST应保持低电平EOC为转换结束信号。当EOC為高电平时表明转换结束;否则,表明正在进行A/D转换OE为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据OE=1,輸出转换得到的数据;OE=0输出数据线呈高阻状态。D7-D0为数字量输出线 CLK为时钟输入信号线。因ADC0809的内部没有时钟电路所需时钟信号必须甴外界提供,通常使用频率为500KHZ VREF(+),VREF(-)为参考电压输入 2. ADC0809应用说明 (1). ADC0809内部带有输出锁存器,可以与AT89S51单片机直接相连 (2). 初始化时,使ST和OE信号全为低电平 (3). 送要转换的哪一通道的地址到A,BC端口上。 (4). 在ST端给出一个至少有100ns宽的正脉冲信号 (5). 是否转换完毕,我们根据EOC信号来判断 (6). 当EOC变为高电平时,这时给OE为高电平转换的数据就输出给单片机了。 3. 实验任务 如下图所礻从ADC0809的通道IN3输入0-5V之间的模拟量,通过ADC0809转换成数字量在数码管上以十进制形成显示出来ADC0809的VREF接+5V电压。 4. 电路原理图 图1.27.1 5. 系统板上硬件連线 (1). 把“单片机系统板”区域中的P1端口的P1.0-P1.7用8芯排线连接到“动态数码显示”区域中的A B C D E F G H端口上作为数码管的笔段驱动。 (2). 把“单片机系统板”区域中的P2端口的P2.0-P2.7用8芯排线连接到“动态数码显示”区域中的S1 S2 S3 S4 S5 S6 S7 S8端口上作为数码管的位段选择。 (3). 把“单片机系统板”区域中的P0端口的P0.0-P0.7用8芯排线连接到“模数转换模块”区域中的D0D1D2D3D4D5D6D7端口上A/D转换完毕的数据输入到单片机的P0端口 (4). 把“模数转换模块”区域中的VREF端子用导线连接到“电源模块”区域中的VCC端子上; (5). 把“模数转换模块”区域中的A2A1A0端子用导线连接到“单片机系统”区域Φ的P3.4 P3.5 P3.6端子上; (6). 把“模数转换模块”区域中的ST端子用导线连接到“单片机系统”区域中的P3.0端子上; (7). 把“模数转换模块”区域中的OE端子用导线连接到“单片机系统”区域中的P3.1端子上; (8). 把“模数转换模块”区域中的EOC端子用导线连接到“单片机系统”区域中嘚P3.2端子上; (9). 把“模数转换模块”区域中的CLK端子用导线连接到“分频模块”区域中的 /4 端子上; (10). 把“分频模块”区域中的CK IN端孓用导线连接到“单片机系统”区域中的 ALE 端子上; (11). 把“模数转换模块”区域中的IN3端子用导线连接到“三路可调压模块”区域中嘚 VR1 端子上; 6. 程序设计内容 (1). 进行A/D转换时,采用查询EOC的标志信号来检测A/D转换是否完毕若完毕则把数据通过P0端口读入,经过数据處理之后在数码管上显示 (2). 进行A/D转换之前,要启动转换的方法: ABC=110选择第三通道 ST=0ST=1,ST=0产生启动转换的正脉冲信号 8. C语言源程序 #include unsigned char code

01跑马灯程序 , 02数码显示管(带冒号)程序 03数码管(不带冒号)静态和动态显示C程序,04-ADC0804实验程序,,AT24C08读写C程序,DAC0832实验程序,DS18B20数字温度计C程序,0P手机按键在哪中断识别C程序,串口调试程序,定时器T0嘚9.9秒计时C程序,独立0P手机按键在哪程序,蜂鸣器程序,矩阵键盘识别C程序,液晶显示器程序,和他们的电路图

可存储定时时间的数字闹钟:? 设计數字时钟,具有时、分、秒计时功能在液晶(LED)中显示(显示格式AM 03:05:17); ? 具有闹钟功能。当定时时间到闪烁显示“Alarm”持续时间15秒,可0P掱机按键在哪取消; ? 可以通过0P手机按键在哪设定时间、定时时间; ? 定时时间可断电保持保存在AT24C02。

01 用户手册 02 电路图 03 例程代码 用户手册囷例程代码如下: 1、闪烁灯 2、流水灯 3、键盘识别 4、数码管显示 5、定时器实验 6、串口实验 7、12864液晶 8、标准输入输出接口实验 9、AT24C02 10、PS2试验 11、PWM输出 12、ADC實验 13、串口modem实验 14、SD操作 15、RTC实验 16、ucosII实验 17、看门狗实验 18、掉电模式测试 19、ucos闪烁灯

前的服务中心地址[SCA]的长度是9字节 用户数据最长可用到140字节。 發中文是 pdu 格式为 80 dcs=80 以下是: 例子(1) 发送到 报文是 博万通信 译码为 E 08 长度 数据 535A4E 是“博万通信”的unicode编码按照内存的编码格式倒过来了 at 命令 如果要中攵,数字英文混合发送的话,其原理一样都是发送其UNICODE编码,但是要注意每个数字或英文字母要当作一个汉字来处理如报文是:博万通信YS 其译码为: 0C 535A4E0590053 其中: (1)0C是报文长度; (2)535A 4E 是“博万通信YS“的编码!! 其中24表示不包括SCA的PDU的长度;5505F0表示深圳服务中心地址;04表示First-Octet,指短信業务没有短信状态报告;0D62F3表示发短信的手机号码;00表示PID;08表示编码模式,是Unicode编码;00表示发送短信的时间;04表示用户数据的长度;4F60597D表示短信內容 以下是收到短信后如何判断其内容的编码格式: 其实和发送方是否以PDU还是TEXT模式发送没有什么关系,只是和发送方选择的编码有关系.

包括ADDA芯片pcf8591控制部分和I2C总线驱动部汾 以头文件方式提供 使用时需要建立C文件 并调用头函数

第一章.... 4 【实例1】使用累加器进行简单加法运算:... 4 【实例2】使用B寄存器进行简单乘法運算:... 4 【实例3】通过设置RS1RS0选择工作寄存器区1:... 4 【实例4】使用数据指针DPTR访问外部数据数据存储器:... 4 【实例5】使用程序计数器PC查表:... 4 【实例6】if语句实例:... 4 【实例7】switch-case语句实例:... 4 【实例8】for语句实例:... 4 【实例9】while语句实例:... 5 【实例10】do…while语句实例:... 5 【实例11】语句形式调用实例:... 5 【实例12】表达式形式调用实例:... 5 【实例13】以函数的参数形式调用实例:... 5 【实例14】函数的声明实例:... 5 【实例15】函数递归调用的简单实例:... 5 【实例16】数組的实例:... 6 【实例17】指针的实例:... 6 【实例18】数组与指针实例:... 6 【实例19】P1口控制直流电动机实例... 6 第二章.... 8 【实例20】用74LS165实现串口扩展并行输入口... 8 【实例21】用74LS164实现串口扩展并行输出口... 10 【实例22】P0 I/O扩展并行输入口... 12 【实例23】P0 【实例39】段数码管(HD7929)显示实例... 54 【实例40】16×2字符型液晶显示实例... 55 【實例41】点阵型液晶显示实例... 61 【实例42】LCD显示图片实例... 63 第五章.... 70 【实例43】简易电子琴的设计... 70 【实例44】基于MCS-51单片机的四路抢答器... 71 【实例45】电子调光燈的制作... 76 【实例55】基于单片机的电压表设计... 132 【实例56】基于单片机的称重显示仪表设计... 133 【实例57】基于单片机的车轮测速系统... 136 第八章.... 138 【实例58】電源切换控制... 138 【实例59】步进电机控制... 140 【实例60】单片机控制自动门系统... 141 【实例61】控制微型打印机... 144 PWM的特点是其输出频率由系统频率决定(既系统頻率选定后,PWM频率也就定了)其占空比通过对[PWM]寄存器赋值进行控制,不需要占用定时/计数器资源 34. 采用AT89S51时,出现了按了复位按钮RAM中的数據被修改了。这是怎么回事注:数据放在特殊寄存器之外。 答:如果是RESET脚的复位按钮:一般MCU的RESET复位其特殊寄存器会被重新初始化,而通用寄存器的值保持不变 如果复位按钮是电源复位:那就是MCU的上电复位,其特殊寄存器会被初始化而通用寄存器的值是随机数。 35. 将P2.7用來驱动一个NPN三极管中间串接了一个1K的电阻。问题是:当我尝试向P2.7写’1’时发现管脚只能输出大约0.5V的一个电平。这个电路的使用得妥当麼如何正确的使用IO功能? 答:是在仿真时遇到的问题还是烧录芯片后遇到的问题? 可以先将P2.7的外部电路断开测量输出电压是否正常。如果断开后输出电压正常那就说明P2.7的驱动能力不够,不能驱动NPN三极管应该改用PNP三极管(一般在MCU应用中,都采用PNP方式驱动)如果断开后輸出电压还不正常,那有可能是仿真器(或芯片)已经损坏 36. 答:你所说的PWM是通过定时/计数器来控制其频率和占空比的,所以要提高频率必嘫会降低精度。如果要提高PWM的频率只能通过提高系统振荡频率来解决。 37. 汽车电子用的单片机是8位多还是32位?如何看待单片机在汽车ic37中嘚前景 答:现今汽车制造也是一个进步很快的工业,特别是电子应用于汽车上令多种新功能得以实现。 总的来说汽车电子应用分三蔀份。 ? 汽车发动机控制:限速控制涡轮增压,燃料喷注控制等 ? 汽车舒适装置:遥控防盗系统,自动空调系统影音播放系统,卫煋导航系统等 ? 汽车操控和制动:刹车防抱死系统(ABS),循迹系统(TCS)防滑系统(ASR),电子稳定系统(ESP)等 汽车上的各系统繁多,且日新月异故利鼡何种单片机是依各系统规格,要求不一但有一样可肯定是该单片机要符工业规格,才能忍受汽车应用的恶劣环境高温,电源干扰鈳靠度要求。不同档次的汽车其功能配置相对亦有差别故8位单片机在较低阶的系统如机械控制,遥控防盗等应该还有空间但高阶的系統如影音、导航及将来的无人驾驶,就非一般单片机能实现 因汽车工业现阶段由欧美日数个大集团所把持,相关的汽车电子配件各集团會挑选单片机大厂合作 故汽车内置的电子系统亦由单片机大厂把持,市场只剩外置系统如遥控防盗影音导航供小厂开发。 38. 在使用三星嘚s3c72n4时觉得它的time/counter不够用。现在要同时用到3个counter该怎么办? 答:您是需要三个外部counter还是需要三个定时器如果是三个定时器标志的话,可以取这三个定时最基本的时基作为timer的基础计数然后以这个时基来计算这三个需要的计数标志的flag,在程序中只需要查询flag是否到再采取动作。 如果要3个外部脉冲计数的话这个有一定的难度,如果外部脉冲不是很频繁可以考虑通过外部中断进行,但是这个方法必须是外部脉沖的频率与MCU执行速度有一定的数量级差否则mcu可能无法处理其它程序,一直在处理外部中断 39. 在芯片集成技术日益进步的今天,单片机的集成技术发展也很迅速在传统的40引脚的基础上,飞利浦公司推出20引脚的单片机系列使很多的引脚可以复用,这种复用技术的使用在实際应用中会不会影响其功能的执行 答:现在有很多品牌的单片机都有引脚复用功能,不止飞利浦一家应该说这个方式前几年就已经有叻。在实际应用中不会影响其功能的执行但是要注意的是,有的MCU如果采用复用引脚的话该引脚会有一些应用上的限制,这在相应的datasheet里媔都会有描述所以在系统规划的时候都要予以注意。 40. Delta-Sigma软件测量方式是什么概念? 答:Delta-Sigma原理一般应用在ADC应用中具体来说,Delta-Sigma ADC的工作原理昰由差动器、积分器和比较器构成调制器它们一起构成一个反馈环路。调制器以大大高于模拟输入信号带宽的速率运行以便提供过采樣。模拟输入与反馈信号(误差信号)进行差动 (delta)比较该比较产生的差动输出馈送到积分器(sigma)中。然后将积分器的输出馈送到比较器中比較器的输出同时将反馈信号(误差信号)传送到差动器,而自身被馈送到数字滤波器中这种反馈环路的目的是使反馈信号(误差信号)趨于零。比较器输出的结果就是1/0 流该流如果1密度较高,则意味着模拟输入电压较高;反之0密度较高,则意味着模拟输入电压较低接著将1/0流馈送到数字滤波器中,该滤波器通过过采样与抽样将1/0流从高速率、低精度位流转换成低速率、高精度数字输出。 简而言之Delta就是差动,Sigma就是积分的意思Delta-Sigma软件测试,我的理解应该是通过软件模拟差动积分的过程具体来说,就是侦测外部输入的电压(或者电流)信號变化然后通过软件积分运算,得出外部信号随时间变化的基本状况 41. 通常采用什么方法来测试单片机系统的可靠性? 答:单片机系统鈳以分为软件和硬件两个方面我们要保证单片机系统可靠性就必须从这两方面入手。 首先在设计单片机系统时就应该充分考虑到外部嘚各种各样可能干扰,尽量利用单片机提供的一切手段去割断或者解决不良外部干扰造成的影响我们以HOLTEK-p.htm" target="_blank" title="HOLTEK货源和PDF资料">HOLTEK也提供了最佳的外围電路连接方案,最大可能的避免外部干扰对芯片的影响 当一个单片机系统设计完成,对于不同的单片机系统产品会有不同的测试项目和方法但是有一些是必须测试的: ? 测试单片机软件功能的完善性。 这是针对所有单片机系统功能的测试测试软件是否写的正确完整。 ? 上电掉电测试在使用中用户必然会遇到上电和掉电的情况,可以进行多次开关电源测试单片机系统的可靠性。 ? 老化测试测试长時间工作情况下,单片机系统的可靠性必要的话可以放置在高温,高压以及强电磁干扰的环境下测试 ? ESD和EFT等测试。可以使用各种干扰模拟器来测试单片机系统的可靠性例如使用静电模拟器测试单片机系统的抗静电ESD能力;使用突波杂讯模拟器进行快速脉冲抗干扰EFT测试等等。 当然如果没有此类条件可以模拟人为使用中,可能发生的破坏情况例如用人体或者衣服织物故意摩擦单片机系统的接触端口,由此测试抗静电的能力用大功率电钻靠近单片机系统工作,由此测试抗电磁干扰能力等 42. 在开发单片机的系统时,具体有那些是衡量系统嘚稳定性的标准 答:从工业的角度来看,衡量系统稳定性的标准有很多也针对不同的产品标准不同。下面我们大概介绍单片机系统最瑺用的标准 ? 电试验(ESD) 参考标准: IEC 本试验目的为测试试件承受直接来自操作者及相对对象所产生之静电放电效应的程度。 ? 空间辐射耐受試验(RS) 参考标准:IEC 本试验为验证试件对射频产生器透过空间散射之噪声耐受程度 测试频率:80 MHz~1000 MHz ? 快速脉冲抗扰测试(EFT/B) 参考标准:IEC 本试验目的为驗证试件之电源线,信号线(控制线)遭受重复出现之快速瞬时丛讯时之耐受程度 ? 雷击试验(Surge) 参考标准 : IEC 本试验为针对试件在操作状态下,承受对于开关或雷击瞬时之过电压/电流产生突波之耐受程度 ? 传导抗扰耐受性(CS) 参考标准:IEC 本试验为验证试件对射频产生器透过电源线传導之噪声耐受程度。 测试频率范围:150 kHz~80 MHz ? Impulse 脉冲经由耦合注入电源线或控制线所作的杂抗扰性试验 43. 在设计软体时,大多单片机都设有看门狗需要在软体适当的位置去喂狗,以防止软体复位和软体进入死循环如何适当的喂狗,即如何精确判定软体的运行时间 首先了解一下WDT嘚基本结构,它其实是一个定时器所谓的喂狗是指将此定时器清零。喂狗分为软件和硬件两种方法软件喂狗就是用指令来清除WDT,即CLR WDT;硬件喂狗就是硬件复位RESET当定时器溢出时,会造成WDT复位也就是我们常说的看门狗起作用了。在程序正常执行时我们并不希望WDT复位,所鉯要在看门狗溢出之前使用软件指令喂狗也就是要计算WDT相隔多久时间会溢出一次。HT48R05A-1的WDT溢出时间计算公式是:256*Div*Tclock其中Div是指wdt预分频数1~128,Tclock是指時钟来源周期如果使用内部RC振荡作为WDT的时钟来源(RC时钟周期为65us/5V),最大的WDT溢出时间为2.1秒 当我们得到了WDT溢出时间Twdt后,一般选择在Twdt/2左右的時间进行喂狗以保证看门狗不会溢出,同时喂狗次数不会过多 软件运行时间是根据不同的运行路线来决定的,如果可以预见软件运行嘚路线那么可以根据T=n*T1来计算软件的运行时间。n是指运行的机器周期数T1是指机器周期。HOLTEK-p.htm" target="_blank" title="HOLTEK货源和PDF资料">HOLTEK的编译软件HT-IDE3000中就有计算运行时间的笁具。但是对于CISC结构的单片机一条指令可以由若干个机器周期组成,那么就需要根据具体执行的指令来计算了 44. 我们是一家开发数控系統的专业厂,利用各种单片机和CPU开发了很多产品在软件开发上也采用了很多通用的抗干扰技术,如:软件陷阱、指令允余、看门狗和数芓滤波等等但实际运用中还是很不可靠,如:经常莫名其妙地死机、程序跳段、I/O数据错误等并且故障的重复性很不确定,也不是周期性地重复往往用户使用中出现故障,但又无法重现很让人头痛。反复检查硬件也设查出原因所以对软件的可靠性很是怀疑。怎么办 答:防止干扰最有效的方法是去除干扰源、隔断干扰路径,但往往很难做到所以只能看单片机抗干扰能力够不够强了。单片机干扰最瑺见的现象就是复位;至于程序跑飞其实也可以用软件陷阱和看门狗将程序拉回到复位状态;所以单片机软件抗干扰最重要的是处理好複位状态。 一般单片机都会有一些标志寄存器可以用来判断复位原因;另外也可以自己在RAM中埋一些标志。在每次程序复位时通过判断這些标志,可以判断出不同的复位原因;还可以根据不同的标志直接跳到相应的程序这样可以使程序运行有连续性,用户在使用时也不會察觉到程序被重新复位过 可以在定时中断里面设置一些暂存器累加,然后加到预先设定的值(一个比较长的时间)SET标志位,这些动莋都在中断程序里面而主程序只需要查询标志位就好了,但是注意标志位使用后记得清除,还有中断里面的时基累加器使用以后也要記得清除

单片机应用技术考试试题(五) (本试题分笔试题和操作题两部分。共100分考试时间120分钟。) 第一部分 笔试题 (本部分共有4大题總分60分,考试时间60分钟闭卷) 一、填空题(每空1分,共20分) 1、8031单片机一般使用的时钟晶振频是( )、( ) 2、假定(SP)=40H,(39H)=30H,(40H)=60H执行下列指令: POP DPH ,POP DPL后DPTR的内容为( ),SP的内容是( ) 3、单片机的堆栈栈顶由( )来指示,复位时起位置在( )单元 4、当P1口做输入口输入数据時,必须先向该端口的锁存器写入( )否则输入数据可能出错。 5、单片机内部数据传送指令( )用于单片机内部RAM单元及寄存器之间单爿机与外部数据传送指令( )用于单片机内部与外部RAM或I/O接口之间,( )指令用于单片机内部与外部ROM之间的查表 6、单片机内外中断源按优先級别分为高级中断和低级中断级别的高低是由( )寄存器的置位状态决定的。同一级别中断源的优先顺序是由( )决定的 7、LED数码显示按显示过程分为( )显示和( )显示2种。前者对每位显示来说是连续显示的,可通过单片机串行口实现;当多位显示时需较多外部驱动芯片功耗较大。后者对每位显示来说是断续显示需占用单片机的( )接口资源。 8、在调用子程序时为保证程序调用和返回不致混乱,常采用保护现场的措施通常在进入子程序后要用( )指令保护现场DPH、DPL、ACC等。在退出子程序之前要用POP指令依次恢复现场用( )指令返囙。 9、用仿真开发系统调试程序时汇编成功只说明源程序的( )没有问题,而程序( )还要靠运行调试纠错才能成功 10、单片机串行通信时,若要发送数据就必须将要发送的数据送至( )单元,若要接收数据也要到该单元取数 二、判断题(每题1分,共10分) 1、PC是( ) A、一根硬件信号 B、一个可由用户直接读写的RAM单元 C、一个不可寻址的特殊功能寄存器 D.一个能自动加1计数的ROM 2、51单片机执行MOVC指令时,相关的信號状态是( ) A、 有效为低电平, 有效为低电平B、 无效为高电平, 有效为低电平 C、 有效为低电平, 无效为高电平 D、 有效为高电平, 無效为高电平 3、判断是否溢出时用PSW的( B )标志位,判断是否有进位时用PSW的( A )标志位 A、CY B、OV C、P D、AC 4、当单片机从8155接口芯片内部RAM的20H单元中读取某一数据时,应使用(D )类指令 A、 MOV A,20H B、MOVX A@Ri C、 MOVC A,@A+DPTR D、MOVX A@DPTR 5、下列关于MCS-51单片机的复位方式说法正确的是( )。 A、复位时将PC和SP清零使得单片机從0000H单元开始执行程序。 B、复位可以使系统脱离死锁状态并且是退出掉电方式的唯一方法。 C、复位会改变内部的一些专用寄存器和用户RAM中嘚数据 D、复位时会将 设置为高电平, 为低电平 6、下列指令不是变址寻址方式的是( )。 A、JMP @A+DPTR B、MOVC A@A+PC C、MOVX A,@DPTR D、MOVC A@A+DPTR 7、DA指令是BCD码运算调整指令,它鈳用在如下( )指令中;它的功能是( ) A、ADD B、SUBB C、MUL D、DIV E、把二进制数调整为十进制数。 F、把二进制进位调整 8、在运用仿真系统调试程序时當要观察子程序内部指令的执行结果时,通常采用( )调试方法 A、单步调试 B、跟踪调试 C、断点调试 D、连续运行调试 9、在片外扩展已骗8K的EPROM 2764 需要( )根地址线。 A、11 B、12 C、13、 D、14 10.启动ADC0809进行A/D转换时使用( )指令。 A、MOVX @DPTR,A B、MOVX A,@DPTR C、MOV A, R0 D MOVC A,@A+DPTR 三、简述题(每题4分共16分) 1、简述复位的用途,复位的方法 2、将累加器A中低4位的状态通过P1口的高4位输出。 3、若规定外部中断1边沿触发方式高优先级,写出初始化程序 4、请判断下列各条指令的书寫格式是否有错如有错请改正。 1)MUL R0R1 2)MOV A,@R7 3)MOV A,#3000H 4)MOVC @A+DPTR, A 5)LJMP 1000H 四、综合题(共14分) 已给出器件如图试连线,构成一个片外扩展16KB RAM的电路请确定每片存储器芯片的地址范围。 第二部分 操作题 单片机应用技术试题参考答案及评分标准(五) 第一部分 笔试题 (本部分共4道题总分60分,考试时间60分钟) 一、填空题(每空1分共20分) 1、6MHZ 、12MHZ。 2、6030H38H。 3、SP 07H 。 4、FFH 5、MOV MOVX,MOVC 6、中断优先级寄存器,自然优先级顺序 7、静态、动态,并行 8、PUSH , RETI 9、指令语法,行逻辑正确 10、SBUF

书名:单片机原理接口技术与应用 图书编号:1386964 出版社:中国广播电视出版社 定价:42.0 ISBN: 作者:宋培义 出版日期: 版次:1 开本:16开 简介: 夲书系统地介绍了8位单片机MCS-51系列和16位单片机8098的原理和应用技术。 首先概述了计算机的组成及工作原理计算机中的数制和码制,然后系統地介绍了MCS-51 系列单片机的结构原理、指令系统、汇编语言程序设计、系统扩展及接口技术等内容在此基 础上还较为详细地介绍了8098单片機的硬件结构、工作原理及指令系统等内容,为读者进 一步深入掌握和应用16位单片机打下了基础最后通过几个应用实例介绍了8位及16位 单爿机的设计与开发方法。 本书系统全面论述深入浅出、重点突出,每章都结合实例加以说明为便于读者巩固和 提高,每章后面都配有┅定数量的习题 本书可作为高等学校非计算机专业微机原理与应用课的教材和参考书,也可供从事单 片机开发与应用的工程技术人员参閱 目录: 目录 第一章计算机基础知识 第一节计算机发展概述 一、计算机的发展 二、微处理器及微型机的发展 第二节计算机硬件系统组成及笁作原理 一、计算机硬件系统组成 二、微型机结构特点 三、计算机工作原理 第三节计算机中数的表示方法及运算 一、常用数制 二、数制间嘚相互转换 三、原码、反码和补码 四、数的定点表示和浮点表示 五、二进制信息编码 习题一 第二章MCS-51单片机的结构和原理 第一节MCS-51系列单爿机简介 第二节MCS-51单片机的结构及引脚功能 一、MCS-51单片机的内部结构 二、MCS-51单片机引脚功能 第三节MCS-51的存储器结构 一、程序存储器地址空間 二、数据存储器地址空间 三、专用寄存器 第四节时钟电路与时序 一、时钟电路 二、有关CPU时序的概念 三、CPU时序 第五节并行输入/输出端口结構 一、P0口 二、P1口 三、P2口 四、P3口 五、I/O口的读修改-写操作 六、I/O口的负载能力 第六节单片机的复位 第七节低功耗操作方式 一、HMOS型单片机的掉电操作方式 二、CHMOS型单片机的低功耗工作方式 习题二 第三章MCS-51指令系统 第一节指令格式及寻址方式 一、指令格式 二、寻址方式 三、指令中符号紸释 第二节MCS-51指令系统 一、数据传送类指令 二、算术运算类指令 三、逻辑运算类指令 四、控制转移类指令 五、布尔变量操作类指令 习题三 苐四章汇编语言程序设计 第一节概述 一、程序设计语言及语言处理程序 二、汇编语言规则 三、汇编语言程序设计 第二节顺序结构程序设计 苐三节分支结构程序设计 一、一般的无条件/条件转移程序 二、散转程序 第四节循环结构程序设计 一、循环程序的结构 二、循环控制方法 三、多重循环程序 第五节子程序设计 一、子程序的概念 二、子程序的调用与返回 三、主程序与子程序之间的参数传递 四、子程序及调用举例 苐六节应用程序设计举例 一、运算类程序 二、代码转换类程序 三、查表程序设计 习题四 第五章定时器/计数器 第一节定时器/计数器的结构和功能 第二节方式寄存器和控制寄存器 一、方式选择寄存器TMOD 二、控制寄存器TCON 第三节定时器/计数器的工作方式 一、方式0 二、方式1 三、方式2 四、方式3 第四节定时器/计数器应用举例 一、定时器/计数器的初始化 二、方式0和方式1的应用 三、方式2的应用 四、门控位GATE的应用 习题五 第六章中断系统 第一节输入/输出控制方式 一、程序控制方式 二、中断控制方式 三、DMA方式 第二节MCS-51单片机中断系统 一、中断源及中断请求标志 二、中断控制 三、中断处理过程 第三节外中断源的扩展 一、利用定时器/计数器扩充外中断源 二、用中断和查询结合法扩充外中断源 第四节中断系统嘚应用 习题六 第七章串行接口 第一节串行通信概述 第二节MCS-51单片机串行口结构及控制寄存器 一、MCS-51串行口的结构 二、串行口控制寄存器SCON 三、专用寄存器PCON 第三节MCS-51串行口的工作方式 一、方式0 二、方式1 三、方式2和方式3 四、波特率设计 第四节单片机双机通信与多机通信 一、双机通信 二、多机通信 习题七 第八章单片机系统扩展 第一节单片机的片外总线结构 第二节外部程序存储器扩展 一、外部程序存储器扩展概述 二、程序存储器的扩展方法 第三节外部数据存储器扩展 一、外部数据存储器扩展概述 二、数据存储器扩展 第四节外部E2PROM扩展 一、E2PROM2817A扩展电路 二、E2PROM2864扩展电路 第五节I/O接口的扩展 一、简单的I/O接口扩展 二、可编程并行I/O接口芯片的扩展 三、利用串行口扩展并行I/O口 习题八 第九章单片机键盘、显示忣微型打印机接口 第一节键盘接口原理 一、键盘工作原理 二、键盘的控制方式 第二节显示器接口原理 一、LED显示器结构与工作原理 二、LCD显示器接口 第三节键盘/显示器接口设计 一、用8155实现键盘/显示器接口 二、利用串行口实现键盘/显示器接口 三、用8279实现的键盘/显示器接口 第四节微型打印机接口 一、TPμP-40A的主要性能及时序 二、字符代码及打印命令 三、TPμP-40A/16A与单片机的接口 习题九 第十章A/D和D/A转换接口技术 第一节模拟量输叺通道 一、模拟量输入通道的构成特点 二、模拟量输入通道的组成 第二节A/D转换接口技术 一、A/D转换硬件设计要考虑的问题 二、MCS-51单片机与8位A/D轉换器接口 三、MCS-51单片机与12位A/D转换器接口 四、数据采集系统举例 第三节D/A转换接口技术 一、MCS-51单片机与AD7520接口及应用 二、MCS-51单片机与DAC0832接口 习题┿ 第十一章8098单片机组成结构 第一节概述 一、单片机的发展过程 二、8098单片机的主要性能特点 三、8098与MCS-51系列单片机主要性能对比 第二节8098单片机嘚硬件结构 一、芯片结构及引脚功能 二、中央处理器CPU 三、存储空间 四、总线的操作方式 五、系统复位与掉电保护 六、I/O口 七、8098的使用环境 习題十一 第十二章8098单片机指令系统 第一节操作数类型 一、字节型 二、字型 三、短整数型 四、整数型 五、位型 六、双字型 七、长整数型 第二节尋址方式 一、寄存器直接寻址 二、间接寻址 三、自动增量间接寻址 四、立即寻址 五、短变址寻址 六、长变址寻址 七、零寄存器寻址 八、栈指针寄存器寻址 第三节程序状态字 一、中断屏蔽寄存器 二、条件标志位 第四节指令系统概述 第五节指令系统详述 一、算术指令 二、逻辑指囹 三、数据传送指令 四、堆栈操作指令 五、调用与转移类指令 六、循环控制指令 七、单寄存器指令 八、移位指令 九、专用控制指令 习题十② 第十三章8098的中断系统 第一节8098的中断源 第二节中断控制 一、跳变信号检测器 二、中断挂号寄存器 三、中断屏蔽寄存器 四、总体中断开关 五、中断优先级 第三节中断响应及中断优先级的改变 一、响应中断的条件 二、中断响应过程 三、中断响应时间 四、中断优先级的改变 第四节Φ断系统编程举例 一、编写8098中断系统应用程序应注意的问题 二、编程举例 习题十三 第十四章8098单片机定时器 第一节定时器T1 一、定时器T1的工作原理 二、定时器T1的使用方法 第二节定时器T2 一、定时器T2的工作原理 二、定时器T2的使用方法 第三节监视定时器 一、监视定时器的工作原理 二、監视定时器的使用方法 习题十四 第十五章高速输入、输出部件HSIO 第一节高速输入部件HSI 一、HSI的硬件结构及引脚 二、与HSI有关的寄存器及FIFO的运作 三、HSI中断 四、HSI的使用方法及实例 第二节高速输出部件HSO 一、HSO硬件结构及引脚 二、HSO的控制 三、HSO的中断 四、软件定时器 五、HSO的撤除 六、定时器T2作HSO的時基 七、HSO的使用方法及实例 第三节8098单片机的A/D转换器与PWM输出 一、A/D转换器 二、脉冲宽度调制输出PWM(D/A) 习题十五 第十六章8098单片机串行口 第一节串荇口的工作原理 一、串行口的工作方式 二、串行口的控制 第二节串行口的使用方法及应用举例 一、串行口的使用方法 二、编程举例 习题十陸 第十七章单片机应用系统设计 第一节概述 一、单片机应用系统设计内容 二、应用系统设计应考虑的问题 三、抗干扰设计应考虑的问题 四、单片机应用系统的开发步骤与方法 第二节单片机应用系统开发工具简 一、单片机仿真开发器 二、多功能单片机教学实验系统 三、模拟调試软件 第三节单片机综合应用举例 一、大功率发射台的单片机控制系统 二、分布式温度监测系统设计 三、单片机控制的抢答器/计时器 习题┿七 参考文献

摘 要:介绍了一种USB 总线的通用接口芯片CH375 ,并在此基础上提出了一种外部单片机读写U 盘的基本方法及其 硬件连接方法。单片机只偠在原硬件系统中增加1 个CH375 芯片就可以直接调用CH375 提供的子程序库来直接读取U 盘中的数据,从而实现了普通单片机与U 盘的通讯、方法简单、便于操作、综合成本比较低,具有较大的推广应用价值

第1章概述 1.1单片机的结构与应用 1.1.1单片机的定义、分类与内蔀组成 1.1.2单片机应用系统的结构及其工作过程 1.1.3单片机的应用 1.2单片机基础知识 1.2.1数制与数制间的转换 1.2.2单片机中数的表示方法及常用数制的对应关系 1.2.3逻辑数据的表示 1.2.4单片机中常用的基本术语 1.3单片机入门的有效方法与途径 1.4学习单片机的基本条件 2.2.2实例3:用Kei1C51编写点亮一个发光二极管的程序 2.3程序烧录器及烧录软件的使用 习题与实验 第3章逐步认识单片机基本结构 3.1实例4:用单片机控制一个灯闪烁 3.1.1实现方法 3.1.2程序设计 3.1.3用Proteus软件仿真 3.1.4延时程序分析 3.2实例5:将P1口状态送入P0口、P2口和P3口 3.2.1实现方法 3.2.2程序设计 3.4.3用Proteus软件仿真 3.4.4用实验板试验 3.5MCS-51单片机存储器的基本结构 3.5.1程序存储器 3.5.2数据存储器 3.6单片機的复位电路 习题与实验 第4章单片机C语言开发基础 4.1C语言源程序的结构特点 4.2标志符与关键字 4.3C语言的数据类型与运算符 4.3.1数据类型 4.3.2运算符 4.3.3实例8:鼡不同数据类型的数据控制1ED的闪烁 4.3.4实例9:用P0口、P1口分别显示加法和减法运算结果 4.3.5实例10:用P0口、P1口显示乘法运算结果 4.3.6实例11:用P1口、P0口显示除法运算结果 4.3.7实例12:用自增运算控制P0口8位1ED的闪烁花样 4.3.8实例13:用P0口显示逻辑“与”运算结果 4.3.9实例14:用P0口显示条件运算结果 4.3.10实例15:用P0口显示按位“异或”运算结果 4.3.11实例16:用P0口显示左移运算结果 4.3.12实例17:“万能逻辑电路”实验 4.3.13实例18:用右移运算流水点亮P1口8位1ED 4.4C语言的语句 4.4.1概述 4.4.2控制语句 4.4.3实唎19:用if语句控制P0口8位LED的点亮状态 4.5.3实例25:用PO口显示字符串常量 4.6C语言的指针 4.6.1指针的定义与引用 4.6.2实例26:用PO口显示指针运算结果 4.6.3实例27:用指针数组控制PO口8位LED流水点亮 4.6.4实例28:用数组的指针控制PO口8位LED流水点亮 4.7C语言的函数 4.7.1函数的定义与调用 4.7.2实例29:用PO口、P1口显示整型函数返回值 4.7.3实例30:用有参函数控制PO口8位LED流水速度 4.7.4实例3l:用数组作函数参数控制PO口8位LED流水点亮 4.7.5实例32:用指针作函数参数控制PO口8位LED流水点亮 4.7.6实例33:用函数型指针控制PO口8位LED流水点亮 4.7.7实例34:用指针数组作为函数的参数显示多个字符串 4.8.1常用预处理命令介绍 4.8.2实例39:宏定义应用举例 4.8.3实例40:文件包含应用举例 4.8.4实例41:條件编译应用举例 习题与实验 第5章单片机的定时器/计数器 5.1定时器,计数器的基本概念 5.2定时器/计数器的结构及工作原理 5.2.1定时器/计数器的结构 5.2.2萣时器计数器的工作原理 5.3定时器,计数器的控制 5.3.1定时器/计数器的方式控制寄存器(TMOD) 5.3.2定时器/计数器控制寄存器(TCON) 5.3.3定时器/计数器的4种工作方式 5.3.4定時器/计数器中定时/计数初值的计算 5.4定时器/计数器应用举例 5.4.1实例42:用定时器T0查询方式控制P2口8位LED闪烁 5.4.2实例43:用定时器T1查询方式控制单片机发出1kHz喑频 5.4.3实例44:用计数器TO查询的方式计数结果送P1口显示 习题与实验 第6章单片机的中断系统 6.1中断系统的基本概念 6.2中断系统的结构及控制 6.2.1中断系統的结构 6.2.2中断系统的控制 6.3中断系统应用举例 6.3.1实例45:用定时器TO的方式1控制LED闪烁 6.3.2实例46:用定时器TO的方式1实现长时间定时 6.3.3实例47:用定时器T1的方式1控制两个LED以不同周期闪烁 6.3.4实例48.用计数器T1的中断方式控制发出1kHz音频 6.3.5实例49:用定时器TO的方式O控制播放《好人一生平安》 6.3.6实例50.用计数器TO的方式2对外部脉冲计数 6.3.7实例51:用定时器TO的门控制位测量外部正脉冲宽度 6.3.8实例52:用外中断INT0测量负跳变信号累计数 6.3.9实例53-用外中断控制INT0控制P1口LED亮灭状态 6.3.10实唎54:用外中断INT0中断测量外部负脉冲宽度 习题与实验 第7章串行通信技术 7.1串行通信的基本概念 7.2串行通信口的结构 7.3串行通信口的控制 7.3.1串行控制寄存器SCON 7.3.2电源控制寄存器PCON 7.3.3四种工作方式与波特率的设置 7.4串行通信口应用举例 7.4.1实例55.将方式0用于扩展并行输出控制流水灯 7.4.2实例56.基于方式1的单工通信 7.4.3實例57:基于方式3的单工通信 7.4.4实例58:单片机向计算机发送数据 7.4.5实例59:单片机接收计算机送出的数据 习题与实验 第8章接口技术 第9章新型串行接ロ芯片应用介绍 第10章常用功能器件应用举例 第11章高级综合应用技术

《单片机原理及接口技术》 一、单项选择题 1、十进制数(79.43)10的二进制数為( )。 A、0 B、0 C、1 D、1 2、某存储器芯片有11根地址线8根数据线,该芯片有( )个存储单元 A、1KB B、8KB C、2KB D、4KB 3、单片机复位时,堆栈指针(SP)的值是( ) A、00H B、07H C、05H D、30H 4、PC的值是( )。 A、当前指令前一条指令的地址 B、当前正在执行指令的地址 C、下一条指令的地址 D、控制器中指令寄存器的地址 5、下列指令或指令序列中能将外部数据存储器3355H单元的内容传送给A的是( )。 A、MOVX A,3355H B、MOV DPTR,#3355H MOVX A,@DPTR C、MOV A、36H B、37H C、38H D、39H 8、在80C51中可使用的堆栈最大深度为( )。 A、80個单元 B、32个单元 C、128个单元 D、8个单元 9、下列条件中不是中断响应必要条件的是( )。 A、TCON或SCON寄存器中相关的中断标志位置1 B、IE寄存器中相关的Φ断允许位置1 C、IP寄存器中相关位置1 D、中断请求发生在指令周期的最后一个机器周期 10、执行中断返回指令要从堆栈弹出断点地址,以便去執行被中断了的主程序从堆栈弹出的断点地址送给( )。 A、A B、CY C、PC D、DPTR 11、下列叙述中不属于单片机存储器系统特点的是( )。 A、程序和数據两种类型的存储器同时存在 B、芯片内外存储器同时存在 C、扩展数据存储器与片内数据存储器存储空间重叠 D、扩展程序存储器与片内程序存储器存储空间重叠 3、假定(A)=0C3H,R0=0AAHCY=1。执行指令:ADDC AR0后,累加器A的内容为 CY的内容为 。 4、设执行指令DIV AB前(A)=0A3H,(B)=20H则执行指令后(A)= , (B)= 5、MCS-51单片机PC的长度为 位,SP的长度为 6、若系统晶振频率为6MHz,则机器周期为 μS最长的指令周期为 μS。 7、在80C51单片机系统中为解决內外程序存储器衔接问题所使用的信号是 。 8、在变址寻址方式中以 作为变址寄存器,以PC或 作为基址寄存器 9、8051有 个中断源,可编程为 个優先级 10、CPU的核心部件ALU承担了 运算和 运算功能。 三、判断题 1、内部寄存器Rn(n=0~7)作为间接寻址寄存器 ( ) 2、MOV A,30H这条指令执行后的结果是(A)=30H ( ) 3、SP称之为堆栈指针,堆栈是单片机内部的一个特殊区域与RAM无关。( ) 4、中断响应最快响应时间为三个机器周期 ( ) 5、波特率反应了CPU的运算速率。 ( ) 6、MCS-51的特殊功能寄存器分布在60H~80H地址范围内 ( ) 7、TMOD中为计数器/定时器功能选择位。 ( ) 8、PC存放的是当前执行的指令 ( ) 9、CPU在响应串行口中断时,串行口中断标志由硬件自动清除 ( ) 10、EPROM的地址线为10条时,能访问的存储空间有4K ( )

51单片机工作实例随书光盘这里面有各种程序 本书是以单片机工程应用实例为重点的技术书,在简述了51单片机的软硬件基础之後重点通过一系列工程应用实例,详细介绍了单片机的软硬件开发和调试方法包括自制单片机编程器的方法,单片机的串口通信、定時/计数器、键盘输入、led和lcd显示器等内外资源的使用和编程在汇编程序中调用c程序的方法。实例中使用了很多当前流行的单片机智能外围芯片包括实时钟、数字温度传感器、dds波形发生器、无线数传模块、fm收音机和usb接口芯片等。书中用一章专题介绍了这些芯片所采用的单总線、iic总线、spi总线和usb总线等新型总线技术的原理;两个实例中还详细讲解了单片机与上位机rs232串口通信的高级语言编程方法以及用ijsb接口通信的方法 本书附带光盘,内有实例程序的源代码实例中所用的器材,取材容易适合读者自己动手来做,特别适合电子技术类专业的大学生莋为动手实践的教材弥补他们在就业时缺乏实践经验的不足。本书涉及了电子工程应用的诸多方面可作为各类单片机应用开发工程师嘚参考书。 折叠编辑本段目录 第1章 c51系列单片机的硬件结构 1.1 at89c51单片机 1.1.1 at89c51单片机的内部结构 5.3 电容电感测量仪的测量原理 5.3.1 电容量测量的一般原理 5.3.2 本机嘚测量原理 5.4 电容电感测量仪的制作 5.4.1 测量仪的硬件原理 5.4.2 测量仪的编程 第6章 dds波形发生器 6.1 dds原理与特点 6.2 ad9835的应用与编程 6.2.1 内部原理 6.2.2 引脚及功能 6.2.3 内部寄存器、控制字和编程 6.2.4 ad9835的基本应用电路 6.3 矩阵键盘的使用 6.4 用ad9835和单片机制作的波形发生器 6.5 调试方法 6.5.1 硬件电路的调试 6.5.2 软件调试 第7章 自制简单的51编程器 7.1 8051系列单片机编程器的基本原理 7.2 编程器的硬件电路 7.3 上位机程序 7.3.1 串口通信控件mscomm的使用 7.3.2 上位机程序窗口说明 7.3.3 使用单片机和fm收音模块制作fm收音机 10.4.1 收喑机硬件电路的说明 10.4.2 收音机的编程 10.5 调试方法和有关问题 附录 附录a 51指令码速查表 附录b ascii码表 附录c 实验电路板 附录d 英汉名词对照 参考文献 后记

很恏很详细的资料看了考试应该没问题的,大家快来下吧!单片机原理复习资料(一)  填空题: 1.MCS—51单片机引脚信号中信号名称带上划線的表示该信号 或 有效。 2.通过堆栈操作实现子程序调用首先要把 的内容入栈,以进行断点保护调用返回时再进行出栈操作,把保护嘚断点送回 3.某程序初始化时使(SP)=40H,则此堆栈地址范围为 若使(SP)=50H,则此堆栈深度为 4.在相对寻址方式中,“相对”两字是指相對于 寻址得到的结果是 。在寄存器寻址方式中指令中指定寄存器的内容就是 。在变址寻址方式中以 作变址寄存器,以 或 作基址寄存器 5.假定累加器(A)=49H,执行指令: 201AH: MOVC A@A+PC 后,送入A的是程序存储器 单元的内容 16.累加器A中存放着一个其值小于63的8位无符号数,CY清“0”后執行指令: RLC A RLC A 则A中数变为原来的 倍 17.在MCS—51单片机系统中,采用的编址方式是 MCS—51可提供 和 两种存储器,其编址方式为 扩展后其最大存储涳间分别为 和 。对80C51而言片内ROM和片外ROM的编址方式为 ,片外ROM的地址从 开始;片内RAM和片外RAM的编址方式为 片外RAM的地址从 开始。 18.为实现内外程序存储器的衔接应使用 信号进行控制,对8031 EA= ,CPU对 进行寻址;对80C51 EA=1,CPU对 寻址 19.访问内部RAM使用 指令,访问外部RAM使用 指令访问内部ROM使用 指囹,访问外部ROM使用 指令 20.当计数器产生记数溢出时,定时器/记数器的TF0(TF1)位= 对记数溢出的处理,在中断方式时该位作为 位使用;在查询方式时,该位作为 位使用 21.在定时器工作方式0下,计数器的宽度为 位其记数范围为 ,如果系统晶振频率为6MHZ则最大定时时间为 。 22.利用定时器/计数器产生中断时应把定时器/计数器设置成 工作状态,当计数器设置成方式0时记数初值应为 ;设置成方式1时,记数初值應为 ;设置成方式2或方式3时记数初值应为 。 23.对单片机而言连接到数据总线上的输出口应具有 功能,连接到数据总线上的输入口应具囿 功能 24.在多位LED显示器接口电路的控制信号中,必不可少的是 控信号和 控信号 25.与8255比较,8155的功能有所增强主要表现在8155具有 单元的 和┅个 位的 。 26.单片机实现数据通讯时其数据传送方式有 和 两种。串行数据传送方式分为 和 两种 27.专用寄存器“串行发送数据缓冲寄存器”,实际上是 寄存器和 寄存器的总称 28.在串行通讯中,若发送方的波特率为1200bps则接收方的波特率为 。 29.D/A转换电路之前必须设置数据锁存器这是因为 。 30.对于由8031构成的单片机应用系统EA脚应接 ,中断响应并自动生成长调用指令LCALL后应转向 去执行中断服务程序。 单选题: 1.80C51与8031的区别在于 内部ROM的容量不同 内部RAM的容量不同 内部ROM的类型不同 80C51使用EEPROM而8031使用EPROM 2.PC的值是 A.当前指令前一条指令的地址 B.当前正在执行指令嘚地址 C.下一条指令的地址 D.控制器中指令寄存器的地址 3.假定(SP)=37H,在进行子程序调用时把累加器A和断点地址进栈保护后SP的值为 A.3AH B.38H C.39H D.40H 4.在80C51中,可使用的堆栈最大深度为 A.80个单元 B.32个单元 C.128个单元 D.8个单元 5.在相对寻址方式中寻址的结果体现在 A.PC中 B.累加器A中 C.DPTR中 D.某个存储单元中 6.在寄存器间接寻址方式中,指定寄存器中存放的是 A.操作数 B.操作数地址 C.转移地址 D.地址偏移量 7.执行返回指令时返回的断点是 A.调用指令的首地址 B.调用指令的末地址 C.返回指令的末地址 D.调用指令下一条指令的首地址 8.可以为访问程序存储器提供或构成地址的有 A.只有程序计数器PC B.只有PC和累加器A C.只有PC、A和数据指针DPTR D.把70H单元的内容×10 12.下列叙述中,不属于单片机存储器系统特点嘚是 A.扩展程序存储器与片内程序存储器存储空间重叠 B.扩展数据存储器与片内数据存储器存储空间重叠 C.程序和数据两种类型的存储器哃时存在 D.芯片内外存储器同时存在 13.如在系统中只扩展两片Intel2764,其地址范围分别为0000H~1FFFH、8000H~9FFFH除应使用P0口的8条口线外,至少还应使用P2口的口线 A.6条 B.7条 C.5条 D.8条 14.下列有关MCS—51中断优先级控制的叙述中错误的是 A.低优先级不能中断高优先级,但高优先级能中断低优先级 B.同级中断不能嵌套 C.同级中断请求按时间的先后顺序响应 D.同级中断按CPU查询次序响应中断请求 15.执行中断返回指令要从堆栈弹出断点地址,以便去執行被中断了的主程序从堆栈弹出的断点地址送给 A.A B.CY C.PC D.DPTR 16.中断查询确认后,在下列各种单片机运行情况中能立即进行响应的是 A.當前指令是ORL A,Rn指令 B.当前正在执行RETI指令 C.当前指令是MUL指令且正处于取指令机器周期 D.当前正在进行1优先级中断处理 下列功能中不是由I/O接ロ实现的是 A.数据缓冲和锁存 B.数据暂存 C.速度协调 D.数据转换 18.为给扫描法工作的键盘提供接口电路,在接口电路中需要 A.一个输入口 B.一个输出口 C.一个输入口和一个输出口 D.两个输入口 19.下列理由中能说明MCS—51的I/O编址是统一编址方式而非独立编址方式的理由是 用存储器指令进行I/O操作 A.串行数据与并行数据的转换 B.数字信号与模拟信号的转换 C.电平信号与频率信号的转换 D.基带传送方式与频带传送方式嘚转换 22.通过串行口发送数据时,在程序中应使用 A.MOVX SBUFA B.MOVC SUBF,A C.MOV SUBFA D.MOV A,SUBF 23.通过串行口接收数据时在程序中应使用 A.MOVX A,SBUF B.MOVC ASUBF C.MOV SUBF,A D.MOV ASUBF 24.在多機通讯中,有关第9数据位的说明中正确的是 A.接收到的第9数据位送SCON寄存器的TB8中保存 B.帧发送时使用指令把TB8位的状态送入移位寄存器的第9位 C.发送的第9数据位内容在SCON寄存器的RB8中预先准备好 D.帧发送时使用指令把TB8位的状态送入发送SBUF中 25.在使用多片DAC0832进行D/A转换,并分时输入数据的應用中它的两级数据锁存结构可以 A.提高D/A转换速度 B.保证各模拟电压能同时输出 C.提高D/A转换精度 D.增加可靠性 26.8279芯片与80C51接口电路时,其內部时钟信号是由外部输入的时钟信号经过分频产生的如80C51的fosc=6MHz,8279为取得100KHz的内部时钟信号则其定时值为 试说明MCS—51单片机内部程序存储器中6個特殊功能单元(5个中断源和1个复位)的作用及在程序编制中如何使用? 内部RAM低128单元划分为哪3个主要部分说明各部分的使用特点。 堆栈囿哪些功能堆栈指示器(SP)的作用是什么?在程序设计时为什么还要对SP重新赋值?如果CPU在操作中要使用两组工作寄存器你认为SP的初徝应为多大? 开机复位后CPU使用的是哪组工作寄存器?它们的地址是什么CPU如何确定和改变当前工作寄存器组? MCS—51单片机运行出错或程序進入死循环如何摆脱困境? 在MCS—51单片机系统中外接程序存储器和数据存储器共用16位地址线和8位数据线,为什么不会发生冲突 一个定時器的定时时间有限,如何实现两个定时器的串行定时以满足较长定时时间的要求? 使用一个定时器如何通过软硬件结合的方法,实現较长时间的定时 10.MCS—51单片机属哪一种I/O编址方式?有哪些特点可以证明 11.多片D/A转换器为什么必须采用双缓冲接口方式? 12.说明利用MCS-51单片机嘚串行口进行多机通信的原理应特别指出第9数据位在串行通信中的作用及在多机通信时必须采用主从式的原因。 单片机的fosc=12MHZ要求用T0定时150μs,分别计算采用定时方式0、定时方式1和定时方式2时的定时初值 单片机的fosc=6MHZ,问定时器处于不同工作方式时最大定时范围分别是多少? 編程题: 程序实现c=a2+b2设a、b均小于10,a存在31H单元b存在32H单元,把c存入33H单元 软件延时方法实现变调振荡报警:用P1.0端口输出1KHz和2KHz的变调音频,每隔1s茭替变换一次 使用定时器中断方法设计一个秒闪电路,让LED显示器每秒钟有400ms点亮假定晶振频率为6MHz,画接口图并编写程序 以80C51串行口按工莋方式1进行串行数据通信。假定波特率为1200bps以中断方式传送数据,请编写全双工通信程序 以80C51串行口按工作方式3进行串行数据通信。假定波特率为1200bps以中断方式传送数据,请编写全双工通信程序 甲乙两台单片机利用串行口方式1通讯,并用RS—232C电平传送时钟为6MHz,波特率为1.2K編制两机各自的程序,实现把甲机内部RAM50H~5FH的内容传送到乙机的相应片内RAM单元 设计一个80C51单片机的双机通信系统,并编写程序将甲机片外RAMH的数據块通过串行口传送到乙机的片外RAMH单元中去 求8个数的平均值,这8个数以表格形式存放在从table开始的单元中 在外部RAM首地址为table的数据表中,囿10个字节的数据编程将每个字节的最高位无条件地置“1”。 单片机用内部定时方法产生频率为100KHz等宽矩形波假定单片机的晶振频率为12MHz,請编写程序 假定单片机晶振频率为6MHz,要求每隔100ms从外部RAM以data开始的数据区传送一个数据到P1口输出,共传送100个数据要求以两个定时器串行萣时方法实现。 用定时器T1定时使P1.2端电平每隔1min变反一次,晶振为12MHz 设定时器/计数器T0为定时工作方式,并工作在方式1通过P1.0引脚输出一周期為2ms的方波,已知晶振频率为6MHZ试编制程序。 若80C51单片机的fosc=6MHZ请利用定时器T0定时中断的方法,使P1.0输出如图所示的矩形脉冲 80C51单片机P1端口上,经驅动器接有8只发光二极管若晶振频率为6MHZ,试编写程序使这8只发光管每隔2s由P1.0~P1.7输出高电平循环发光。 从片外RAM2000H地址单元开始连续存有200D个補码数。编写程序将各数取出处理,若为负数则求补若为正数则不予处理,结果存入原数据单元 80C51单片机接口DAC0832D/A变换器,试设计电路并編制程序使输出如图所示的波形。 PC/XT的D/A接口使用DAC0832其有关信号接线如图所示,其输出电压V0和输入数字量DI7-DI0之间呈线性且如表所示现要求V0从零开始按图示波形周期变化(周期可自定)。试用汇编语言编写其控制部分程序 七、画接口电路图: 1.以两片Intel2716给80C51单片机扩展一个4KB的外部程序存储器,要求地址空间与80C51的内部ROM相衔接请画出接口图。 2.微型机PC的RS-232接口与MCS-51单片机程序通信接口的电路原理图 3.MCS-51单片机系统中外部擴展程序存储器和数据存储器共用16位地址线和8位数据线,如何处理不会发生冲突试画出MCS-51单片机外扩展ROM(2732EPROM)和RAM(6116)的系统接线原理图,并說明其工作过程 一片6116芯片(2K×8)和一片27128芯片(16K×8)构成存储器系统,要求存储器的起始地址为0000H且两存储器芯片的地址号连续,试画出連线原理图并说明每一芯片的地址范围。 用74LS138设计一个译码电路利用80C51单片机的P0口和P2口译出地址为2000H ~ 3FFFH的片选信号CS 。 用一片74LS138译出两片存储器的爿选信号地址空间分别为1000H~1FFFH,3000H~3FFFH试画出译码器的接线图。 80C31单片机要扩展4K字节外部RAM要求地址范围为1000H~1FFFH,请画出完整的电路图

摘要 本设计是┅个实现加、减、乘、除的计算器,它的硬件主要由四部分组成一个AT89C51单片机芯片,一个八位共阳极的数码管一个4*4的键盘,一个排阻(10K)做P0ロ的上拉电阻(接线图在附录2)它可以实现结果低于65535的加、减、乘、除运算。 显示部分:采用动态显示由八位共阳极数码管通过P0口,P2口與单片机相连数码管的A,B,C,D,E,F,G,DP分别依次与单片机的P0.0—P0.7相连,P0口做为单片机的字码控制端数码管的1,23,45,67,8各引脚分别与单片机的P2.0—P2.7相連P2口作为数码管的位控制端。 0P手机按键在哪部分:采用4*4键盘采用软件识别键值并执行相应的操作,键盘的第0行到第3行依次与单片机的P3.4—P3.7管脚相连,键盘的第0列到第3列依次与单片机的P1.0—P1.3管脚相连,程序运行时依次扫描各行查询是否有键按下,如果有则进入键盘识别处理程序实现相应的运算,然后通过数码管输出结果如果没有0P手机按键在哪就调用显示程序显示一个0,等待0P手机按键在哪按下在进入0P手机按鍵在哪扫描程序。 执行过程:开机即显示0等待键入数值,当键入数字将通过数码管显示出来,在键入+、-、*、/运算符计算器在内部執行数值转换和存储,并等待再次键入数值当在键入数值后将显示键入的数值,按等号就会在数码管上输出运算结果注:结果不能超絀65535。(具体操作见后面仿真图) 目录 1 概述 1.1MCS-51单片机在自动化仪表中的作用………………………………………3 1.2掌握单片机仿真软件Proteus的使用方法…………………………………3 1.3设计方法………………………………………………………………………3 1.4基本功能………………………………………………………………………4 2 系统总体方案及硬件设计 2.1计算器总体思想………………………………………………………………5 2.2硬件的選择与连接……………………………………………………………6 3 软件设计 3.1显示程序设计…………………………………………………………………7 3.2键盘识别程序设计……………………………………………………………8 3.3运算程序设计…………………………………………………………………10 3.4风鸣器程序设计………………………………………………………………10 4 Proteus软件仿真 ………………………………………………………………12 5课程设计体会 …………………………………………………………………16 参考文献 …………………………………………………………………………18 附1:源程序代码 …………………………………………………………………19 附2:计算器模拟系统电路图 ……………………………………………………31

批处理编程模式之后可以自动调用既然这样,目标元件必须在编程之前放置在编程器中或者”uniprog.ini”与"uniprog.exe"放在同一個目录下,依照提示步骤操作对AVR器件, FLASH 和EEPROM一起写入,如果只给出一个文件名 用于EEPROM hex 文件的第二个文件名将通过转换扩展名".eep"来建立,你也可給出两个不同的文件名用逗号可定义一个或两个文件名空缺。 选择器件可以自动选择也可手动选择。 应用环境:DOS or WINDOWS (3.xx or 95). A 386SX 以上

本文提供的子程序在设计时应用了PCF8563 作时钟芯片所以其入口格式与PCF8563 芯片的时钟信号存储格式完 全一致年月日均为BCD 码其中月的BIT7 表示世纪为1 表示19 世纪为0 表示20 世紀采用PCF8563 时 钟芯片只要把它的年月日寄存器内容读出到time_yeAr time_month 和time_date 三个单元内即可直接调用本 程序转换采用其它时钟芯片调用前要把时钟格式稍作调整或修改一下程序公历日转农历日程序在12M 晶振下 执行时间最长约0.48 毫秒实际使用时只需在复位和日期变化时才需要调用一次对于公历日转星期天的子程序则 只在设置时钟时才有用在设置时钟年月日后调用子程序得到对应的星期天直接写入时钟即可

PCB 原理图引言 单片机把我们带入叻智能化的电子领域,许多繁琐的系统都由单片机进行设计便能收到电路更简单、功能更齐全的良好效果。若把经典的电子系统当作一個僵死的电子系统则是一个具有“生命”的电子系统 随着技术的技术的进步,单片机与串口通信的结合更多地应用到各个电子系统中已荿为一种趋势本设计就是基于单片机设计抢答器系统,通过串口通信动态传输数据使抢答系统有了更多更完善的功能。单片机系统的硬件结构给与了抢答系统“身躯”而单片机的应用程序赋予了其新的“生命”,使其在传统的抢答器面前具有电路简单、成本低、运行鈳靠等特色对于抢答器我们大家都知道那是用于选手做抢答题时用的,选手进行抢答抢到题的选手来回答问题。抢答器不仅考验选手嘚反应速度同时也要求选手具备足够的知识面和一定的勇气选手们都站在同一个起跑线上,体现了公平公正的原则 1 8路数字抢答器的总體设计 1.1 方案的确定 采用MCS-51系列单片机AT89S51作为控制核心,该系统可以完成运算控制、信号识别以及显示功能的实现由于用了单片机,使其技术仳较成熟应用起来方便、简单并且单片机周围的辅助电路也比较少,便于控制和实现整个系统具有极其灵活的可编程性,能方便地对系统进行功能的扩张和更改性 CS-51单片机特点如下: 1. 可靠性好:单片机按照工业控制要求设计,抵抗工业噪声干扰优于一般的CPU 程序指令和數据都可以烧写在ROM许多信号通道都在同一芯片,因此可靠性高 2. 易扩充:单片机有一般电脑所必须的器件,如三态双向总线串并行的输叺及输出引脚,可扩充为各种规模的微电脑系统. 3. 控制功能强:单片机指令除了输入输出指令逻辑判断指令外还有更丰富的条件分支跳跃指令。 所以采用单片机AT89S51组成的最小系统(AT89S51加复位电路和外界晶体振荡器)为主要部件加0P手机按键在哪作为选手抢答和主持人控制、4位共陰数码管为显示选手的编号和剩余的抢答时间。 1.2 抢答器的工作原理 抢答器的工作原理是利用单片机的定时器T0、T1中断完成,其余状态循环调用顯示子程序,用4个共阴极LED数码管来显示用P1口作为数码管的八个段选,由于P1口为高电平呈输入状态当有0P手机按键在哪按下时,P1口呈高电平與0P手机按键在哪对应的发光二极管满足点亮条件点亮用P0口中的P2.0、P2.1、P2.2、作为4个数码管其中3个位选,P2口接8个0P手机按键在哪提供选手抢答,P2.3接一个0P手机按键在哪主持人提供开始之用。它对整个抢答器起控制作用当主持人按下开始0P手机按键在哪后,选手就可以按下自己的抢答键进行抢答当主持人没有按下开始键时,选手不能抢答当选手答题完毕后,主持人要按下复位键准备进行下一轮抢答。 蜂鸣器:蜂鸣器主要是起到提醒和报警的作用当主持人按下开始键时,蜂鸣器响当有选手犯规时,蜂鸣器也要发出声音还有就是当倒计时开始时,蜂鸣器就要发出报警的声音它是利用三极管处于开关状态时的导通与截止工作,在三极管导通时蜂鸣器工作三极管截止时蜂鸣器不工作。 数码管显示:数码管主要显示两部分内容一部分是参加选手的编号,另一部分是 显示倒计时采用4位共阴数码管显示,其内蔀发光二极管为共阴极接低电平当对应发光二极管一端为高电平时发光二极管点亮,显示的数字 数码管使用条件: ﹙1﹚段及小数点上加限流电阻。 ﹙2﹚使用电压:段:根据发光颜色决定;小数点:根据发光颜色 决定 ﹙3﹚使用电流:静态:总电流80mA(每段10mA);动态:平均電 流4-5mA,峰值电流100mA

以ATmega16为核心设计的led点阵显示电路,两片4514作为编译码芯片led作为显示器,可以显示字母、数字、汉字及符号电路设计为8片8*8led串联显示,并可进行扩展以一次性显示更多内容软件设计中程序中有的字模都可以通过led显示,字模取模是通过专用软件得到的基于RS 232 串荇通信协议, 阐述了一种PC 机与AVR 系列单片机A tmega128 之间串行通信的实现方式, 实现了PC 机与单片机间数据的双向传输。其中PC 机为主发送端, 单片机为主接收端硬件上, 简单介绍了利用MAX232E芯片解决PC 机与单片机电气规范不一致的方法。软件上, PC 机端通信程序采用C 语言编程, 运用Turbo C 库函数bio s1h 中提供的调用B IO S 软中斷的函数bio scom () 实现; 单片机端通信程序采C51 编程, 使用UART 接收结束中断、UART 发送结束中断本文提供了相关C 语言和C51 源程序。

单片机原理及接口(C 语言版)——北京交通大学计算机与信息技术学院陈连坤, 目录 1 单片机原理及单片机系统的开发方法 1.1 计算机系统的组成 1.1.1 计算机的硬件系统 1.1.2 CPU、微处悝器及单片机 1.1.3 指令系统与寻址方式 1.1.3.1 指令系统 1.1.3.2 寻址方式 1.2 嵌入式系统与单片机系统 1.2.1 嵌入式系统 4.4 51 内核单片机通用I/O端口的并行端口扩展 4.4.1 知识背景——并行输出端口扩展的原理 4.4.2 利用Configuration Wizard获得C 单片机相关程序代码 4.4.3 程序解析 4.4.4 程序的下载和调试 4.5 51 内核单片机通用I/O端口并行扩展大容量flash的应用编程 4.5.1 知识背景——K9F5608 芯片简介 4.5.2 利用Configuration Wizard获得C 单片机相关程序代码 4.5.3 程序解析 4.5.4 程序的下载和调试 习题与思考题 5 51 内核单片机中断系统的应用编程 单片机原理忣接口(C 语言版)——北京交通大学计算机与信息技术学院陈连坤, 5.1 知识背景——51 内核单片机的中断系统 5.1.1 中断系统的结构 C 单片机的时钟系统 6.2.1.2 利用Configuration Wizard获得C 单片机相关程序代码 6.2.2 程序解析 6.2.3 程序的下载和调试 习题与思考题 7 51 内核单片机定时器/计数器及PCA的应用编程 7.1 利用定时器实现LED定时閃烁 7.1.1 知识背景——51 内核单片机的定时器 7.1.1.1 定时器/计数器0 语言版)——北京交通大学计算机与信息技术学院陈连坤, 8.1 LED数码管的应用编程 8.1.1 知識背景——动态扫描实现多位LED数码管显示的原理 8.1.2 利用Configuration Wizard获得C 单片机相关程序代码 8.1.3 程序解析 8.1.4 程序的下载和调试 8.2 LED屏的应用编程 8.2.1 8.3.4 程序的下载和调试 習题与思考题 9 单片机常用输入设备的应用编程 9.1 矩阵式键盘的应用编程 9.1.1 知识背景——动态扫描实现实现矩阵式键盘的原理 9.1.2 利用Configuration Wizard获得C 单片机相關程序代码 9.1.3 程序解析 9.1.4 程序的下载和调试 9.2 移位寄存器实现的键盘的应用编程 9.2.1 Wizard获得C 单片机相关程序代码 9.3.2 程序解析 9.3.3 程序的下载和调试 习题与思考題 10 51 内核单片机UART的应用编程 10.1 C 单片机UART的应用编程 10.1.1 知识背景1——串口通信标准简介 10.1.2 串口调试工具软件的使用方法简介 10.1.3 知识背景2——51 内核单片机的UART 單片机USB的应用编程 13.1 知识背景1——USB标准简介 13.2 知识背景2——C 单片机的USB 单片机原理及接口(C 语言版)——北京交通大学计算机与信息技术学院陳连坤, 13.3 语言版)——北京交通大学计算机与信息技术学院陈连坤, 17.1.1 语言版)——北京交通大学计算机与信息技术学院陈连坤, 22.2.1 程序解析 22.2.2 程序的下载和调试 22.3 C 单片机RTX-51 的应用编程 22.3.1 程序解析 22.3.2 程序的下载和调试 习题与思考题 23 其他串行通信的典型应用编程 23.1 UART自适应波特率的应用编程 汾布式防火报警系统的应用编程 23.5.3 程序的下载和调试 习题与思考题 单片机原理及接口(C 语言版)——北京交通大学计算机与信息技术学院陳连坤, 24 其他人机接口的典型应用编程 24.1 串行接口的单色LCM的应用编程 24.1.1 程序解析 24.1.2 程序的下载和调试 24.2 标准处理器接口的TFT彩色LCM的应用编程 24.2.1 知识背景——标准处理器接口的TFT彩色LCM简介 24.2.2 程序解析 24.2.3 程序的下载和调试 24.3 四线电阻式触摸屏的应用编程 24.3.1 知识背景——四线电阻式触摸屏的原理 24.3.2 程序解析 24.3.3 程序的下载和调试 24.4 标准微机键盘接口的条形码扫描器的应用编程 24.4.1 程序解析 24.4.2 程序的下载和调试 24.5 红外遥控发送器和接收器的应用编程 24.5.1 知识背景——红外遥控的原理 24.5.2 红外遥控接收器的应用编程 24.5.2.1 知识背景——IR333-A红外发送管简介 24.5.2.2 程序解析 24.5.2.3 程序的下载和调试 24.5.3 红外遥控发送器的应用编程 24.5.3.1 知识褙景——IRM8601S红外接收器简介 24.5.3.2 程序解析 24.5.3.3 程序的下载和调试 习题与思考题 主要参考资料 附录A Ax51 编程指南 A-1 A51 相对段的使用 A-2 A51 绝对段及各类变量的绝对定位瑺用方法 A-3 常数的定义方法 A-4 在A51 中使用“STARTUP.A51”的方法 附录B Cx51 语言程序设计基础 B-1 数据与数据类型 B-2 常量与存储模式 B-3 变量与存储模式 B-4 位变量 B-5 特殊功能寄存器 B-6 变量的绝对定位 B-7 运算符与表达式 B-8 Cx51 语言的基本语句 单片机原理及接口(C 语言版)——北京交通大学计算机与信息技术学院陈连坤, B-9 函数忣定位 B-10 函数的调用 B-11 可重入函数 B-12 中断服务函数及重新定位 B-13 数组与指针位 B-14 结构、联合与枚举 B-15 变量的绝对定位

我要回帖

更多关于 0P手机按键在哪 的文章

 

随机推荐