单片机复习

单片机复习

选择题

组成原理中计算机分为哪些功能部件
A、运算器
B、控制器
C、存储器
D、输入设备
E、输出设备

答案: ABCDE
计算机的存储器分为:
A、U盘
B、内存
C、外存
D、高速缓存
E、寄存器

答案: BCDE
CC2530是
A、工业标准增强型8051MCU
B、包括了极好性能的RF收发器
C、ZigBee协议栈(Z-Stack)
D、提供强大和完整的ZigBee解决方案

答案: ABCD
CC2530使用的IDE是
A、KEIL
B、GCC
C、IAR
D、JAVA

答案: C
IAR创建工程的步骤:
A、创建C文件
B、加入C文件到工程
C、将代码段加入到C文件
D、运行C文件

答案: ABC
IAR对CC2530工程配置包含
A、芯片选择
B、堆栈配置
C、HEX文件配置
D、调试工具配置

答案: ABCD
IAR中编译后代码怎样才能在2530上运行?
A、编译
B、仿真
C、下载
D、固化

答案: C
在IAR中,哪项菜单是重新生成项目?
A、Rebuild All
B、Download and Debug
C、Compile
D、Make

答案: A
下列哪些对CPU而言是输入设备?
A、键盘、鼠标
B、触摸屏
C、LED灯
D、测光设备
E、摄像头

答案: ABDE
下列哪些设备控制可以用输出开关信号来实现?
A、智能窗帘的闭合
B、灯具的开关
C、蜂鸣器的发出声音
D、洗衣机电机的转停
E、电视图像

答案: ABCD
GPIO的每个引脚可以配置为∶
A、输入模式
B、输出模式
C、高阻态模式
D、强驱动模式

答案: ABC
GPIO操作涉及的寄存器:
A、设置方向寄存器相应位为输入/输出模式
B、设置功能寄存器相应位为IO/外设模式
C、输出功能实现改变端口寄存器的电平状态
D、输入功能读取端口寄存器的电平状态

答案: ABCD
中断触发方式有
A、高电平触发
B、低电平触发
C、上升沿触发
D、下降沿触发

按钮: ABCD
主程序中调用中断服务程序没有?
A、调用
B、没调用

答案: B
ADC转换的性能指标有
A、采样频率
B、分辨率
C、转换精度回
D、量化误差

答案: ABCD
ADC控制寄存器
A、APCFG
B、ADCH和ADCL
C、ADCCONn
D、ADCTM

答案: C
定时器的功能和作用
A、定时
B、计数
C、PWM输出
D、比较
E、捕获

答案: ABCDE
CC2530单片机有几个定时器
A、1
B、2
C、3
D、4

答案: D
定时器1的控制寄存器是
A、T1CTL
B、T1STAT
C、T1CNTH和T1CNTL
D、T1CCTnL和T1CCnH

答案: A
标准串口是指
A、UART
B、RS232
C、RS485
D、RS422

答案: B
USART通信的特点:
A、指数据一位一位地顺序传送
B、通信线路简单
C、异步通信,不需要同步
D、传输速度较慢

答案: ABCD
串口通信时需要配置的参数有
A、波特率
B、校验方式
C、数据位长度
D、停止位

答案: ABCD
DMA在数据传输时需要通过CPU
A、正确
B、错误

答案: B
DMA配置结构体是直接通过寄存器配置的
A、正确
B、错误

答案: B
电源管理技术在物联网领域主要目的在于
A、高可靠性
B、高稳定性
C、低功耗
D、高实时性

答案: C
电源管理技术可分为
A、硬件芯片低功耗技术
B、能源消耗低功耗
C、软件设计低功耗技术
D、系统运行低功耗

答案: AC
CC2530提供的五种运行模式中最低功耗模式是
A、PM1
B、PM2
C、PM3
D、空闲模式
E、主动模式

答案: C
温度传感器中通过热辐射进行测量的是:
A、接触式
B、非接触式
C、膨胀式温度计
D、电阻温度计

答案: B
温度传感器从原理可分为
A、金属热电阻
B、半导体热敏电阻
C、半导体二极管、三极管
D、热电偶
E、吸收式光纤、折射式光纤

答案: ABCDE
将两种不同成分导体两端焊接,接入电路后当两结点处在不同温度下时,在回路中就会形成热电势和相应的电流。这种温度传感器是:
A、金属热电阻
B、半导体热敏电阻
C、半导体二极管、三极管
D、热电偶
E、吸收式光纤、折射式光纤

答案: D
湿度传感器按照电量分为:
A、电阻式
B、电容式
C、陶瓷式
D、频率式

答案: ABD
湿度传感器按照湿敏材料分为:
A、电解质
B、陶瓷
C、高分子
D、半导体

答案: ABCD
HTU21D型温湿度传感器
A、输出信号为数字量
B、通信总线为IIC
C、在芯片内存储电子识别码
D、分辨率可调节

答案: ABCD
STM32的GPIO的状态有
A、输入状态
B、输出状态
C、高阻态
D、输入输出状态

答案: ABC
STM32的初始化结构体成员包含
A、配置使用管脚
B、配置输入输出模式
C、配置开关速度
D、配置驱动模式
E、配置上下拉模式

答案: ABCDE
GPIO的初始化函数需传递参数
A、GPIO的端口名
B、GPIO的管脚号
C、GPIO初始化结构体变量
D、GPIO的输入输出模式

答案: AC
STM32的GPIO读写某个管脚位数据的函数是
A、GPIO_ReadOutputDataBit
B、GPIO_Write
C、GPIO_SetBits
D、GPIO_ResetBits
E、GPIO_ReadOutputData

答案: ACD

解答题

  • 单片机基础(含义,组成,应用,特点,与嵌入式的关系)

    • 含义

      在一个单芯片上集成了一个小而完善的微型计算机系统

    • 组成

      一般由集成CPU(运算器,控制器,功能寄存器等),存储器,输入\输出接口以及其他重要的功能部件

      其中运算器的功能:算术运算和逻辑运算

      控制器功能:取指,对指令编译测试,控制数据流动方向

    • 应用

      节能控制,智能语音设备,消防设备,医疗设备

    • 特点

      集成度高,体积小,控制功能强大,易携带,性价比高

    • 与嵌入式的关系

      单片机属于嵌入式嵌入式系统的一部分,嵌入式系统是嵌入到对象体系中的用于执行独立功能的专用计算机系统,而单片机是一个单片微型计算机.嵌入式系统是一个大类,单片机是其中一个重要的子类

  • CC2530和STM32差异

    从硬件上:

    CC2530:由CPU与内存,时钟与电源管理,片上外设,无线射频接收器。

    STM32:主系统由 32 位多层 AHB 总线矩阵构成,总线矩阵用于主控总线之间的访问仲裁管理,仲裁采取循环调度算法。

CC2530功耗低,基于51内核.

STM32功耗高,采用ARM架构

开发软件上:CC2530采用IAR for 8051 .STM32采用IAR for ARM

  • 寄存器操作:如何实现对某个寄存器中某几位赋值为0或1而不影响其他

    寄存器的高四位和第四位都遵循8421,因此当每一位都为1时,高四位:8+4+2+1=15,对应的十六进制为F,同理第四位十六进制也为F,最后的值为0xFF

    所以,要改变寄存器中的某几位,分别让他们和自己所在的高四位和第四位相加,便可实现

    例如:

    将第n,m位设置为1而不改变其他位:

    P1DIR |= (1<

    将第n,m位设置为0而不改变其他位:

    P1DIR &= (~(1<

    (| 按位或 1010 & 1100 = 1110)

    (& 按位与 1010 & 1100 = 1000)

  • GPIO

    微处理器通用输入/输出接口,微处理器通过向GPIO控制寄存器写入数据可以控制GPIO口输入/输出模式,实现对某些设备的控制和信号采集的功能;另外也可以将GPIO进行组合配置,实现较为复杂的总线控制接口和串行通信接口。

    作用:

    ​ 控制引脚高低电平

    编程要点:

    ​ GPIO_Port和GPIO_Pin(端口功能选择 端口方向设置)

    GPIO端口初始化时,需要下面的步骤:

    ​ 使能GPIO时钟,RCC_APB2PeriphClockCmd。

    ​ 设置GPIO参数:输出OR输入,工作模式,端口翻转速率;

    ​ 调用初始化函数:GPIO_Init

    ​ 使用GPIO。

  • ADC

    模数转换器。

    作用:

    ​ 将连续变化的模拟信号转换为离散的数字信号。

    编程要点 :

    初始化系统时钟
    进行ADC的配置
    启动ADC转化
    等待ADC转化结束
    将取得的最终转化结果存入value中
    循环进行

  • 中断

    中断指微处理器在执行某段程序的过程中由于某种原因,暂时中止原程序的执行,转去执行相应的处理程序,在中断服务程序执行完后,再回来继续执行被中断的原程序的过程。

    中断触发过程:中断源发出中断请求->中断响应->中断服务->中断返回

    作用:

    ​ 对外部事件做出快速响应

    ​ 实时处理

    ​ 故障处理

    ​ 实现人机交互

    编程要点:

    ​ 计数/定时器0中断(TF0)

    ​ 计数/定时器1中断(TF1)

    ​ 外部中断0中断(IE0)

    ​ 外部中断1中断(IE1)

    ​ 串行接口中断(TI/RI)

  • 中断服务函数

    中断服务函数不能传入参数;

    中断服务函数不能有返回值;

    中断服务函数应做到短小精悍;

    不要在中断函数中使用printf函数,会带来重入和性能问题

  • 定时器

    定时/计数器是一种能够对时钟信号或外部输入信号进行计数,当计数值达到设定要求时便向CPU提出处理请求,从而实现定时或计数功能的外设。在单片机中,一般使用Timer表示定时计数器。

    作用:

    ​ 定时器:延时或定时控制,输入为内部时钟信号

    ​ 计数器:对外界事件计数,输入为外部开关信号,可用于生产线产品计数信号数量统计和转速测量等方面

    ​ 脉冲宽度调制(PWM 输出功能):根据设定的周期和占空比从 I/O 端口输出控制信号,一般用来控制 LED 亮度或电机转速。

    编程要点:

    ​ T1CNTH、T1CNTL

    ​ 计数器达到最终计数值(溢出或回到零)

    ​ 输入捕获事件

    ​ 输出比较事件

  • WDT(Watch Dog Timer)

    看门狗,是单片机的一个组成部分,它实际上是一个计数器,一般给看门狗一个数字,程序开始运行后看门狗开始倒计数。

    作用:

    ​ 防止程序发生死循环,或者说程序跑飞。

  • DMA

    直接存储器访问

    作用:

    ​ 在没有CPU干预的情况下实现存储器与外围设备、存储器与存储器之间的数据交换,从而可以使CPU从大量的数据交换、慢速的设备访问和分散数据收集中解放出来,最终加快了存储器之间的大量数据的交换,大大提高了CPU的利用率。

    编程要点:

    ​ 源地址: DMA 通道要传送的数据块的首地址

    ​ 目标地址: DMA 通道要写数据的首地址,须确认该目标地址可写

    ​ 传送长度:DMA 要传送的数据长度。长度也可用 VLEN设置

    ​ 可变长度(VLEN): 利用源数据中的第一个字节或字

    ​ 优先级别:与 CPU、其他 DMA 通道和访问端口相关

    流程:配置DMA,启用配置,开启DMA传输,等待DMA传输完毕.

  • 串口

    串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口

    作用:

    ​ 进行两线制通信,通过电平转换(MAX232)可与计算机通信,也可单片机间相互通信

    编程要点:

    ​ 串口配置:

    ​ (1)需要通过P0SEL寄存器将管脚属性配置为外设模式;

    ​ (2)通过PERCFG配置寄存器选择要配置的串口通道

    ​ (3)选择P0为串口优先并将双线总线模式配置为串口模式,

    ​ (4)配置串口波特率停止位和奇偶校验位。

    ​ (5)串口中断配置,并打开中断(可选)

    ​ 接收数据:

    ​ 对接收状态寄存器位URX0IF进行识别,如果接受到数据,则可直接从U0DBUF寄存器中获取接收到的数据。

    ​ 发送数据:

    ​ 首先向U0DBUF寄存器写入要发送的值,然后等到UTX0IF寄存器置位,如果置位则数据发送完成。

  • 单片机 物联网 嵌入式三者关系

    单片机:

    ​ 单片机(Single-Chip Microcomputer)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统.

    物联网:

    ​ 物联网(Internet of Things,简称IOT)是指通过 各种信息传感器、射频识别技术、全球定位系统、红外感应器、激光扫描器等各种装置与技术,实时采集任何需要监控、 连接、互动的物体或过程,采集其声、光、热、电、力学、化 学、生物、位置等各种需要的信息,通过各类可能的网络接入,实现物与物、物与人的泛在连接,实现对物品和过程的智能化感知、识别和管理。

    嵌入式:

    ​ 以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统,嵌入式系统作为装置或设备的一部分,它是一个控制程序存储在ROM中的嵌入式处理器控制板。

    单片机是单片微控制器,根据实际需求把一个计算机系统集成到一个芯片上,应用于嵌入式系统,叫做嵌入式系统技术。嵌入式系统一般处理器更强大,通常具有操作系统。单片机、嵌入式系统都可以成为物联网的一部分.

  • 部分问答题

    • 什么叫单片机?

      单片机是指一个集成在一块芯片上的完整计算机系统

    • 什么叫嵌入式系统?

      用于控制、监视或者辅助操作机器和设备的装置,是一种专用的计算机系统

    • 单片机特点?

      低功耗,低电压,便于生产便携式产品。

      有优异的性能价格比

      集成度高,体积小,可靠性好

      控制能力强

      易扩展

    • AD转换怎么转换的?

      采样:把时间连续变化的信号变换为时间离散的信号

      保持:保持采样信号,使有充分时间转换为数字信号

      量化:把采样保持电路的输出信号用单位量化电压的整数倍表示

      编码:把量化的结果用二进制代码表示

    • 总线将计算机若干功能部件连接起来

    • 什么是接口技术?

      接口技术是微处理器CPU连接外部部件的技术

    • 开关信号可以用CPU输出高低电平来实现。

    • CC2530编程中P1DIR&=~Ox06的作用

      将寄存器P1DIR第3位和第2位设置为0,其余位不变

    • 现有一蜂鸣器,连到P1端口的2引脚上,请完成其端口的配置代码,输出声音及停止声音的代码

      P1_2上面接入一个按键,请写出对应中断使能代码。

      IEN2 |= 0x10; //端口1中断使能
      
      P1IEN |= 0x04; //端口P1_2外部中断使能
      

      P1_2上面接入一个按键,请写出配置下降沿触发的代码。

      PICTL |= 0x02; //端口P1_2下降沿触发
      
    • 如何获取ADC转换结果?

      通过读取ADC存储转换结果的数据高低位寄存器ADCH和ADCL

    • 如设置波特率为38400,则需设置的寄存器为U0GCR=10 , U0BAUD=59

编程题

  • GPIO

    编程实例:LED灯初始化:
    void led_io_init(void)
    {
    	P1SEL &= ~0x03; //端口功能选择 通用IO功能  &按位与 0
    	P1DIR |= 0x03; //端口方向选择 置1输出 置0输入 |按位或 1
    	LED2 = OFF;
    	LED1 = OFF;
    }
    
  • 中断服务函数

    编程实例:
    #pragma vector = P1INT_VECTOR
    _interrupt void P1_ISR(void)
    {
    	EA = 0;						//关中断
    	If((P1IFG  & 0x04) > 0)		//按键中断
        {			
    		P1IFG &= ~0x04;			//中断标志清0
            delay_ms(10);			//按键防抖
    		if(KEY1 == ON)			//判断按键按下
            {			
    			LED2 = ~LED2;			//翻转LED2
    			LED1 = ~LED1;			//翻转LED1
            }
    	}
    	EA = 1;						//开中断
    }
    
  • 中断初始化

    编程实例:
    void ext_init(void)
    {
    		IEN2|= 0x10; //端口1 中断使能
    		P1IEN |= 0x04; //中断屏蔽(引脚使能)使能P1_2引脚
    		P1CTL |= 0x02; //端口中断控制 触发方式  0:上升  1:边沿
    		EA=1;	 //总中断
    }
    
  • 串口

    编程实例:
    串口始化程序:
    void uart0_init(unsigned char StopBits,unsigned char Parity)
    {
    	P0SEL |=  0x0C;                    //初始化UART0端口 
        PERCFG &= ~0x01;                   //选择UART0为可选位置一 
        P2DIR &= ~0xC0;                    //P0优先作为串口0
    	U0CSR = 0xC0;                      //设置为UART模式,而且使能接受器
    	U0GCR = 0x0A;                  
    	U0BAUD = 0x3B;                    //波特率设置为38400
    	U0UCR |= StopBits|Parity;            //设置停止位与奇偶校验
    }
    

你可能感兴趣的:(单片机,嵌入式,传感器,物联网)