单片机期末总结

时间:2024.3.31

一、相关基础知识

1、十进制数126,117,97化为二进制、十六进制数

二进制: 1111110 1110101 1100001

十六进制:7E 75 61

2、求+112、-112的原码、反码、补码.

112: 01110000 01110000 01110000

-112:11110000 10001111 10010000

3、什么是BCD码?什么是ASCII码?

BCD四位二进制代替以为十进制数

ASCII计算机中字母,符号所替代的二进制

二、课程基础知识

1. 一个CPU必须包含哪几个部分?

运算器 寄存器组 控制器

2.什么是堆栈?其特点是什么?

堆栈:在RAM中的一种存储空间

特点:先进后出

3.MC9S08AW60型号各部分含义

MC:产品状态合格

9:片内袋带闪存Flash EEPROM

S08:内核类型

AW:子系列型号标志

60:程序存储器大小为60KB

4.MC9S08AW60有内核是多少位的CPU?CPU内的寄存器组?RAM及FLASH容量?都有什么外围模块?最高总线频率为多少?

(1)8位

(2)累加器A;变址寄存器 HX;堆栈指针SP;程序计数器PC;条件码寄存 器CCR (书34页)

(3)RAM容量:2K

FLASH容量:60K

(4)GPIO外围模块:7个端口 54个引脚 2个串行口 2个TPM模块 1个键 盘模块、1个AD模块

(5)最高40MHz的CPU内部时钟频率,20MHZ的总线频率

5.MC9SAW60的存储器映射(书28页)

6.MC9SAW60的最小系统都包含哪几个部分(书31)

AW60芯片的硬件最小系统包括电源与其滤波电路、复位电路、晶振电路及 PLL滤波电路、写入器接口电路

三、GPIO应用

1.MC9S08AW60有几个GPIO口?每个GPIO有哪些寄存器?

(1)7个GPIO接口(54个引脚)

(2)PTxDD端口数据方向寄存器

PTxD端口数据寄存器

PTxPE端口上拉使能寄存器

PTxSE斜率寄存器

PTxDS驱动强度寄存器

2.MC9S08AW60应用工程中关系到GPIO应用的函数中,必须包含哪个头文

件?(书69)

MC9S08AW60.h

3.GPIO应用程序设计,例如:

PTD0、PTD1接两个拨动开关,PTB口接八个LED灯,由两个拨动开关的四种

不同状态,使八个LED分别为八个LED灯亮—灭循环;四个LED灯亮,四个

LED灭交替;左移流水灯:右移流水灯。【注:延时函数,开关对灯的控制

等程序详见实验一】

GPIO初始化程序:

PTBD=0XFF;

PTBDD=0XFF;

PTDDD&=0b11111100;(0xFC)

PTDPE|=0b00000011;

灯的控制:

void Light_on_off(void)

{

PTBD=0x00; //8个LED灯点亮

Delay(1000);

PTBD=0xff; //8个LED灯熄灭

Delay(1000);

}

void Light_half(void)

{

PTBD=0xf0; //4个LED灯熄灭4个点亮

Delay(2000);

PTBD=0x0f; //另4个LED灯亮4个熄灭

Delay(2000);

}

【注:设一个全局变量unit8 a=0xfe;unit8 b=0x7】

void Light_shift_left(void)

{

PTBD=a;

if(a==0x7f)

a=0xfe;

else

{

Delay(1000);

a<<=1; //左移//

a|=0x01; //设置左移后的前一盏灯为灭//

}

}

void Light_shift_right(void)

{

PTBD=b;

if(b==0xfe)

b=0x7f;

else

{

Delay(1000);

b>>=1;

b|=0x80;

}

}

四、SCI

1.串行通讯几种传输方式?串行通讯的双方必须要约定什么?

(1)3种 单工、双工、半双工

(2)串行通信的波特率,奇偶校验方式以及传输的数据模式。

2.什么是中断?MC9S08AW60的中断机制CPU响应中断时将哪几个寄存器压 入堆栈保护?(书131-132)

(1)把来自CPU外围设备的强行任务切换请求称为中断

(2)PC、X、A、CCR

备注:累加器A;变址寄存器 HX;堆栈指针SP;程序计数器PC;条件码寄存器CCR

3.MC9S08AW60有几个串行通讯(SCI)模块?每个模块有几个中断资源?

(1)2个

(2)3个

4.MC9S08AW60共有多少个中断资源?这些中断事件发生时,能不能被CPU 接收到?由什么控制?(书133)

(1)26个

(2)一个中断事件发生时,能不能被CPU接收及响应由两个因素控制,一 是对应事件的中断允许控制位,另一个是CCR中的总的中断屏蔽位I,如TPM1 的溢出中断事件,必须是对应该事件的中断允许控制位TOIE设置为1,及 CCR中的I设置为0,此中断事件才能被CPU响应!

5.掌握实验二工程程序设计,主是掌握SCI初始化函数(相关的波特率、传 递模式,发送等设计)数据发送与接收中断处理函数。【详见SCI实验】

SCI初始化:

void SCIInit(word baud )

{

word Mbaud=0;

Mbaud=20*(10000/(baud/100))/16;

SCI1BDH= (unit8)((Mbaud&0xFF00)>>8);

SCI1BDL= (unit8)(Mbaud&0x00FF);

;

}

数据发送:

void SCISendS(char *p) {

}

void SCISend1(char Sch){

}

中断接收:

void interrupt 17 SCI1Rec(void){

char Rechar,ReS;

while ( word i; if(p==0) return; for(i=0;p[i]!='\0';++i) { } SCISend1(p[i]);

五、键盘与显示

1、MC9S08AW60有几个键盘模块?键盘模块有几个接口?与哪几个GPIO接口 复用?控制寄存器是什么?控制寄存器各位的意义?

(1)1

(2)8个接口

(3)PTG0~4,PTD2,3,7

(4)KBI1SC

(5)D7~D4:键盘中断引脚的触发方式

D3:KBF键盘中断标志位,为1时产生键盘中断

D2:KBACK 键盘中断应答位,写1时,清除键盘中断标志位

D1:KBIE 键盘中断使能位,为1时,开放键盘中断

D0:KBIMOD 键盘中断检测模式

2、矩阵式键盘采用动态扫描方式进行,行线与列线要如何定义?矩阵式键 盘的行线与列线定义好后,每个键的键值如何确定?

(1)将列线n4~n1接在PTD7,PTD3,PTD2,PTG4,且定义为输入并进行上 拉;行线m4~m1接在PTG3,PTG2,PTG1,PTG0,并定义为输出

(2)按PTD7,PTD3,PTD2,PTG4,PTG3,PTG2,PTG1,PTG0的顺序所列 出的二进制码所对应的键值 【注:要会推算出矩阵键盘每个按键的键值!】

3、掌握实验三工程程序设计,主要是键盘的初始化。

void KBInit(void)

{

PTGD &=

PTGDD |= //行线(3-0位)为输出

PTDPE |= //输入引脚(列线)有内部上拉电阻

PTGPE |= KBI1SC &=屏蔽键盘中断(KBIE = 0)

KBI1PE |=

//定义输入引脚(列线)为可中断的键盘引脚

KBI1SC |= ; //清除键盘中断请求(KBACK = 1)

}

六、定时器

1、MC9S08AW60有几个TPM模块?每个模块有几个通道?每个通道都有什么 功能?每个TPM模块有几个中断资源?

(1)2

(2)TPM1:6

TPM2:2

(3)输入捕捉,输出比较,PWM

(4)TPM1有7个中断源(一个溢出事件6个通道事件),TPM2有3个中断 源(一个溢出事件,2个通道事件)

2、TPM模块的核心部分有几个控制寄存器?都有什么功能?如果设计一个 定时间隔时要进行什么设置?(如设计接在B口上的八个LED每隔500ms一 亮一灭)完成这个功能的程序设计?

(1)1个

(2)D7:TOF 定时器溢出标志位

D6:TOIE 定时器溢出中断允许位

D5:CPWMS 中心对齐PWM选择位

D3~D4:CLKS 时钟源选择位

D2~D0:定时器分频因子选择位

(3)【注:程序仅为大体思路,变量的定义等细节自己注意】

100ms

TPM1CNTH=0x00;

TPM1CNTL=0x00;

}

注意:定时器设置TPMxMODH:L的值必须先要列出计算该值的计算过程

计算方式为:

(1/系统时钟)*分频因子=a

设定时间ms/a*10^-3(最后的值不能超过65535)

中断实现灯灭灯亮

interrupt 11 void TPM1_100msover(void)

{

uint8 temp;

Count_100ms++;

while(Count_100ms== PTBD= Count_100ms=;

}

temp = ;

TPM1SC&=~TPM1SC_TOF_MASK;

}

TPM初始化 void TPM1Init(void){ TPM1SC=(); //TPM1时钟源选择系统时钟(20MHZ), 分频因子128 TPM1MODH=; TPM1MODL=; //根据时钟源及分频因子,将TPM1的定时时间 设定为

3、每个TPM模块的每个通道有什么控制寄存器?各控制寄存器的功能? TPM通道数值寄存器:当指定的沿跳变发生(即定时系统捕捉到沿跳变)时,锁存计数寄存器的值 TPM通道状态和控制寄存器: 4、TPM模块的某个通道设置为输入捕捉,并计数捕捉到的脉冲数(例如TPM1的通道0上接入光电编码器,设计完成相关程序使通道0对光电编码的输出脉冲计数)

TPM1的初始化

void TPM1Init(void){

TPM1SC=;

//TPM1不允许溢出中断, 时钟源选择系统时钟(20MHZ), 分频因子64 TPM1MODH=TPM1MODL=; //如果只是输入捕捉并不需要一个特定的定时周期,只要定时 器工作就可以

TPM1CNTH=0x00;

TPM1CNTL=0x00;

}

void TPM1ChInit(void){

//设置通道0允许中断,输入捕捉,捕捉上升沿

TPM1C0SC=; }

中断完成脉冲计数

interrupt 13 void TPM1Ch0_isr(void){

uint8 temp;

uint16 P2_count;

P2_count++;

if (P2_count==65535) {

P2_count=0;

P2Sum++;

}

temp=;

TPM1C0SC&=//清除中断标志位

}

5、TPM模块的某个通道设置为输出比较,输出方波(例如TPM1的通道1输 出10KHZ的方波,设计完成相关程序)

TPM1的初始化

void TPM1Init(void){

TPM1SC= //TPM1不允许溢出中断, 时钟源选择系统时钟(20MHZ), 分频因子2 TPM1MODH=TPM1MODL=; //根据时钟源及分频因子,将TPM1的定时周期设定为0.1ms

【注:周期两倍的关系,即真正计算时间为50us;周期设定计算方法为:1/10kHZ】 TPM1CNTH=0x00;

TPM1CNTL=0x00;

}

void TPM1ChInit(void){

//设置通道1为禁止中断,输出比较输出方式为翻转

TPM1C1SC=;

//以下两行可设可不设

TPM1C1VH=0x01;

TPM1C1VL=0x01;

}

6、TPM模块的某个通道输出某个占空比的PWM脉冲(例如TPM1的通道2输 出20KHZ、占空比为60%的PWM,设计相关程序)

TPM初始化

void TPM1Init(void)

{

//设置TPM1禁止溢出中断,时钟源为总线时钟,2分频

TPM1SC=

TPM1CNTH=0x00;

TPM1CNTL=0x00;

TPM1MODH=0x01;

TPM1MODL= }

void TPM1Ch_Init(void) {

TPM1C2SC=;

//设置TPM1通道2不允许中断,low-truePWM方式 TPM1C2VL=((模数寄存器值/100 )*60 )/256;

TPM1C2VH=((模数寄存器值/100 )*60 )%256;

}

七、AD转换

1、什么是AD转换?什么是AD转换的采样精度?MC9SAW60有怎样的采样精 度?

(1)模\数转换模块,其功能是将电压之类的模拟信号转换为相应的数字信

(2)数字量变化一个最小量时模拟信号的变化量,即采样位数

(3)AW60有两种采样精度8位和10位

2、MC9S08AW60有几个AD模块?AD模块有多少路通道?其中能够接入外部 信号的通道有几路?

(1)1

(2)28

(3)16

3、MC9S08AW60的AD转换模块的AD转换触发有几种模式?

2种(软件触发、硬件触发)


第二篇:单片机期末课程总结


单片机期末课程总结

单片机期末课程总结

单片机期末课程总结

单片机期末课程总结

单片机期末课程总结

更多相关推荐:
单片机总结

在本站51hei-5板子上做315兆无线解码和红外解码试验的时候,延时函数的精度很重要,要做到相当精确才可以成功,所以大家一定要掌握.这也是大家最常在QQ里问我的一个问题,如果从keil里看了c语言的反汇编代码…

AT24C02做密码锁c程序——西华师范大学电子协会黄超自学51单片机总结

#includereg52.h#includeintrins.h#defineuintunsignedint#defineucharunsignedcharsbitsda=P2^1;sbitscl=P2^0;v…

单片机总结

单片机课程学习总结单片机这门课程我已经学了一个学期了在这一个学期的学习过程中我一开始不怎么懂得编程但慢慢的我现在已经不仅会读程序还会写程序了真为自己一个学期来努力学到的单片机知识只是而感到高兴怎么学单片机也常看...

单片机学习总结

单片机是一门应用性和综合性很强的学科,它综合了电子技术中的模拟电路和数字电路方面的知识,特别是数字电路,因为数字电路在单片机里面的应用很多。由于单片机涉及的知识很多,所以我们只能循序渐进的学习,逐步的积累,没有…

单片机总结

MCS51单片机课程总结单片机设计技术1概述微型计算机系统包括硬件系统软件系统两大部分运算器微处理器控制器存储器ROMRAM微型计算机IO接口并行接口串行接口主机总线DBABCB硬件外设键盘显示器打印机等微型计...

单片机重点总结

第1章1、微型计算机通常由哪些部分组成?各有哪些功能?答:微型计算机通常由控制器、运算器、存储器、输入/输出接口电路、输入设备和输出设备组成。控制器的功能是负责从内部存储器中取出指令并对指令进行分析、判断、并根…

单片机总结报告

单片机总结报告IC卡小组成员刘绍凯06291043刘永欢06291044一实验设备二实验原理刘中芳06291045如硬件连接图所示本系统可分为如下几个模块单片机80C196模块复位晶振电路电源电路显示模块键位模...

单片机总结

单片机总结第一章一知识点梳理119xx年2月15日第一台电子数字计算机问世冯诺依曼提出程序存储和二进制运算的思想构建了计算机经典结构lt1gt电子计算机经历了五个时代电子管计算机晶体管计算机集成电路计算机大规模...

单片机实习总结报告

专业综合实习总结专业班级:电子信息工程0801学生学号:***指导教师:实习时间:20XX.6.2020XX.7.15机电工程学院一、实习目的和意义1、实习目的:(1)利用单片机小系统实习板,掌握电路原理图;(…

51单片机的学习经验(附学习总结)

51单片机的学习经验附学习总结OFweek工控网讯作为一名电子技术从业人员你学过单片机吗你会运用单片机吗我想你一定学过但不一定会运用因为学习单片机比学习其他学科需要付出更多的努力和代价不仅要学习理论知识还要练习...

51单片机RAM总结

51单片机RAM数据存储区学习笔记1RAMkeilC语言编程RAM是程序运行中存放随机变量的数据空间在keil中编写程序如果当前模式为small模式如果总的变量大小未超过128B则未初始化的变量的初值默认为0如...

单片机知识点总结

单片机考点总结1.单片机由CPU、存储器及各种I/O接口三部分组成。2.单片机即单片微型计算机,又可称为微控制器和嵌入式控制器。3.MCS-51系列单片机为8位单片机,共40个引脚,MCS-51基本类型有803…

单片机总结(35篇)