飞思卡尔单片机原理

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

中断系统在智能车系统中的应用 定时中断
用来控制系统计时,速度检测,算法控制等
外部中断
用于处理无线控制信号等
输入捕捉中断
用于摄像头行场同步信号采集等
A/D转换终止中断 转换终止中断
用于检测AD转换结束
定时器 MC9S12XS128中有增强型定时器模块( 中有增强型定时器模块( 中有增强型定时器模块 Enhanced Capture Timer Module) 1个16位自由运行计数器 个 位自由运行计数器 8个16位输入捕捉 输出比较通道 个 位输入捕捉 位输入捕捉/输出比较通道 1个16位脉冲累加器 个 位脉冲累加器
什么是单片机 什么是单片机? 什么是单片机?
单片机是一种集成在电路芯片,是采用超大规模 集成电路技术把具有数据处理能力的中央处理器 CPU、随机存储器RAM、只读存储器ROM、多种 I/O口和中断系统、定时器/计数器等功能(可能 还包括显示驱动电路、脉宽调制电路、模拟多路 转换器、A/D转换器等电路)集成到一块硅片上 构成的一个小而完善的计算机系统(来源:百度 百科)
定时器
定时器在智能车系统中的应用 速度检测 道路信息定时采样 系统输出定时控制
定时器例子
void interrupt 15 C4I_ISR(void) //定时中断控制程序 定时中断控制程序 { unsigned int i; long int Avg_Dir=0; DisableInterrupts; TFLG1=0X80;//清中断标志 清中断标志 for(i=0;i<100;i++) { Avg_Dir+=dir[i]; } Avg_Dir/=100; Last_A_Dir=A_Dir;//上次采样平均值 上次采样平均值 A_Dir=Avg_Dir; TC7=2000; EnableInterrupts; }
MC9S12XS128 Flash容量:128KB RAM容量:12KB CAN总线:1个 SCI总线:2个 SPI总线:1个 A/D转换:8通道,8/10位 定时器:8通道,16位 I/O数量:91/59/44个(112/80/64引脚)
通用输入输出模块
MC9S12XS128(80QFP封装)有通用 口59个 ( 封装) 封装 有通用I/O口 个 采用与功能模块的引脚复用模式, ,采用与功能模块的引脚复用模式,并通过寄存 器来选择。 器来选择。 I/O 口分为: 口分为:
PORTA0
R1
S0
外部中断控制寄存器
IRQE:IRQ边沿触发使能位 0:低电平触发 1:高电平触发 IRQEN:IRQ中断使能位 0:禁止 1:允许
中断程序示例
Void main() { IRQCR = 0XC0;//设置为允许下降沿中断 设置为允许下降沿中断 EnableInterrupts; } #pragma CODE_SEG NON_BANKED void interrupt 6 ISR(void) { ISR6Function(); } #pragma CODE_SEG DEFAULT void ISR6Function() { }
PWM波形 PWM波形
PWM模块结构和原理 PWM模块结构和原理
PWM实例 PWM实例
void pwminitial() { PWMPOL=0X01; //通道 输出波形开始极性为1 output 通道0输出波形开始极性为 通道 输出波形开始极性为 waveform which high first then low when the duty counter is reached PWMCAE=0x00; //左对齐输出模式 output left align waveform 左对齐输出模式 PWMCLK=0X01; //PWM时钟源为 SAClock SA is the clock source 时钟源为 for PWM channel 0 PWMPRCLK=0X03; //时钟 分频 时钟A8分频 Clock A is 8MHz/8=1MHz 时钟 PWMSCLA=0X80; //时钟 为1MHz/128/2 时钟SA为 Clock SA is 时钟 1MHz/128/2=4KHz PWMPER0=255; //设定输出周期 通道时钟周期 设定输出周期=通道时钟周期 设定输出周期 通道时钟周期*256 PWMDTY0=0; //占空比初始为 占空比初始为0 占空比初始为 PWM waveform's frequent is 16 PWME=0X01; //通道 使能 通道0使能 通道 channel 0 }
通用I/O 通用I/O 口的应用
数据寄存器PORT 数据总线D0 WR_PORT D G Q PORT引脚
Q
RD_DDR D RD_PORT G Q 方向寄存器DDR
Q
WR_DDR
通用I/O寄存器 通用I/O寄存器 I/O
按键实例
VCC Void Main() { int iKey=0; iKey=PORTA; }
A/D转换模块 A/D转换模块 MC9S12XS128内置 个16通道 位的逐次 内置1个 通道 通道12位的逐次 内置 逼近模数转换百度文库 可选8/10/12位转换精度 可选 位转换精度 转换时间短 可由外部触发控制 可选择单次或连续转换
A/D转换实例 A/D转换实例
#include <hidef.h> /* common defines and macros */ #include <mc9s12XS128.h> /* derivative information */ void ADCInit() { ATD0CTL2=0xC0; //AD模块上电 快速清零 无等待模 模块上电, 模块上电 快速清零, 禁止外部触发, 式, 禁止外部触发 中断禁止 ATD0CTL3=0x20; // 每个序列 次转换 No FIFO, Freeze 每个序列4次转换 次转换, 模式下继续转换 ATD0CTL4=0x83; // 8位精度 2个时钟 位精度, 个时钟, 位精度 个时钟 ATDClock=[BusClock*0.5]/[PRS+1] ; PRS=3, divider=8 ATD0CTL5=0xA0; //右对齐无符号,单通道采样,通道 右对齐无符号, 右对齐无符号 单通道采样,通道0 ATD0DIEN=0x00; // 禁止数字输入 }
Duty is 50%,and enable pwm
SCI/SPI串行通信模块 SCI/SPI串行通信模块 SPI(Serial Peripheral interface)串行外围设备 串行外围设备 接口是一个同步串行通信系统,即发送、 接口是一个同步串行通信系统,即发送、 接收双方共享一个时钟信号, 接收双方共享一个时钟信号,以确保数据 传输是同步的。 具有1个时钟信号 传输是同步的。SPI具有 个时钟信号、2个 具有 个时钟信号、 个 数据信号和1个主从选择信号 个主从选择信号。 数据信号和 个主从选择信号。SPI能用于 能用于 两个器件之间的点对点通信或通过SPI总线 两个器件之间的点对点通信或通过 总线 的多点通信。 的多点通信。
• Port A, B 和 K 为通用 I/O • Port E 与IRQ, XIRQ 中断复用 • Port T 与1 个定时器模块复用 • Port S 与2 个SCI模块和 个SPI 模块复用 模块和1 模块和 • Port M 与1 个MSCAN模块复用 模块复用 • Port P 连接至 PWM 模块另外可以作为外部中断源 • Port H 和 J 是通用 是通用I/O 也可以作为外部中断源 • Port AD 与 AD转换模块复用 转换模块复用
单片机控制系统中的两个通路 能量通路
即能量的变换与传输通路。包括系统电源,摄 像头/光电管驱动电路,电机H桥驱动电路,舵 机驱动电路等等。
信号通路
即信号的变换与传输通路。包括道路信号采集 以及A/D变换,信号处理分析、电机控制PWM 输出、舵机控制PWM输出等等。
单片机在智能车中的应用 如何构建一个智能车的单片机控制系统? 如何构建一个智能车的单片机控制系统?
A/D转换实例 A/D转换实例
void main(void) { ADCInit(); //AD初始化 初始化 DDRB = 0xFF; PORTB = 0x00; EnableInterrupts; for(;;) { while(!ATD0STAT1_CCF0); //等待转换结束 等待转换结束 PORTB = (byte)ATD0DR0; //在B口显示转换值 在 口显示转换值 } /* wait forever */ }
SPI通信原理 SPI通信原理
SPI的通信原理很简单,它以主从方式工作,这种 的通信原理很简单,它以主从方式工作, 的通信原理很简单 模式通常有一个主设备和一个或多个从设备, 模式通常有一个主设备和一个或多个从设备,需 要至少4根线 事实上3根也可以 根线, 根也可以( 要至少 根线,事实上 根也可以(用于单向传输 也就是半双工方式)。也是所有基于SPI的设 )。也是所有基于 时,也就是半双工方式)。也是所有基于 的设 备共有的,它们是MISO(数据输入), ),MOSI( 备共有的,它们是 (数据输入), ( 数据输出), ),SCK(时钟), (片选)。 ),SS(片选)。 数据输出), (时钟), 主设备数据输出, (1)MOSI – 主设备数据输出,从设备数据输入 ) 主设备数据输入, (2)MISO – 主设备数据输入,从设备数据输出 ) 时钟信号, (3)SCK – 时钟信号,由主设备产生 ) 从设备使能信号, (4)SS – 从设备使能信号,由主设备控制 )
道路识别 速度检测 数据分析计算 电机驱动 舵机驱动
智能车单片机系统基本结构
道路信息输入 (光电/摄像头/电磁)
速度信息输入 (速度编码器)
MCU(MC9SXS128)
状态显示 转向舵机 直流电机
设计中使用到的单片机模块 通用输入输出模块 中断系统 定时器 输入捕捉模块 A/D转换模块 转换模块 PWM发生模块 发生模块 SCI/SPI串行总线 串行总线
相关文档
最新文档