飞思卡尔 freescale Kinetis KL25系列资料大全及实例汇总

飞思卡尔 freescale Kinetis KL25系列资料大全及实例汇总
飞思卡尔 freescale Kinetis KL25系列资料大全及实例汇总

Freescale Kinetis KL25系列社区资料大全及实例汇总

介绍:

Freescale 公司Kinetis KL25 MCU向L系列内增加了带集成低压稳压器的全速USB 2.0 OTG控制器,采用32位ARM Cortex-M0内核,拥有48MHz内核频率,工作电压为1.71V~3.6V,。KL25系列作为低功耗、低价格、高性能的微控制器,给工程师们提供了一个合适的入门级32位方案。

本文精选了Kinetis K25教程、例程、设计案例,以及基于Kinetis KL25的流行开发板,集结了国内外官方资料和资深工程师的经验,是学习Kinetis KL25 MCU的必备宝典。

Kinetis KL25 MCU 的功能框图

Kinetis KL25 MCU 教程篇

Kinetis KL25 MCU官方参考手册

Kinetis KL25 MCU 官方数据手册

飞思卡尔Kinetis系列产品开发资源链接总汇

包含Kinetis系列产品的参考手册、数据手册、编译环境、调试工具的相关资源链接。

KL25中文用户手册

官方Kinetis L系列三大特性演示视频(附中文说明文档)

你在设计中往往会忽略掉Kinetis L系列的重要的特性。如果你只是简单的把Kinetis L系列当做一般的Cortex-M0的单片机来使用的话,我们的设计人员估计要郁闷了。闲话少说,赶紧来看看你可能忽略的特性吧

Cortex-M0+, 到底“+”了什么(有视频,有中文文档)

飞思卡尔Kinetis L系列采用的内核是Cortex-M0+,而不是Cortex-M0。这个小小的加号到底增加了什么呢?小小视频讲的一清二楚。

根据KL系列芯片上的缩略标志识别具体型号

大家在使用kinetis芯片的时候,可能会发现一些比较小的芯片上并没有刻出芯片的具体型号,而是刻了一个缩略型号名称,那么如何根据这个缩略名称来识别具体的型号呢?

文中罗列了Kinetis L系列所有的缩略型号对应的芯片具体型号名称,方便大家识别。

KL25 TSI基本原理介绍

TSI(Touch Sensing Interface)模块是飞思卡尔为简化硬件设计人员开发而嵌入到Kinetis架构的电容触摸感应模块,本篇主要介绍TSI模块的基本原理。

KL25 ADC模块详细介绍

文中包含了ADC的模块框图以及对每个模块的详细介绍。

开发篇

FRDM-KL25 cdc win 7 DRIVER 下载

超核KL25固件库BetaV0.5 版

更新的主要内容:

- 完善了几乎所有模块的注释,大家使用起来更方便

- 添加了TPM模块产生PWM波

- 添加MMA845X模块,加速度传感器,满足智能车制作需要。

如何寻找飞思卡尔芯片最新的头文件

芯片头文件在编译环境的安装路径下都是可以找到的,如果大家的编译环境如CodeWarrior、IAR、Keil MDK版本经常更新,就能够找到最新的芯片头文件了。

小窍门:使用KL25-SC中快捷工具创建新工程

经验分享:KL25 I2C结合加速度传感器代码(CW工程)

分享了从K60 100MHz主频、V2版本的例程包KINETIS512_V2_SC移植过来的i2c工程,如果有FRDM-KL25Z开发板就可以直接通过串口观察i2c接口的板载MMA8451Q加速度传感器数据。

KL25官方第10版sample code中BME代码补丁

如果在调试KL25第10版sample code代码的BME工程时,发现打印出的结果显示BME代码确没有普通C代码跑的快,请不要惊慌,本文教您如何解决!

开发板FRDM-KL25实战经验分享:

从零开始玩转FRDM-KL25Z

在这个物价飞涨,通胀严峻的时代,估计童鞋们会越来越来在乎自己的钱袋子啊,注重投入产出比吧。FRDM-KL25Z开发板以其低价质优﹑硬件资源丰富﹑开发资料齐全的优势在一开始推出市场时,就俘获了一众初学者的心。

文中包括FRDM-KL25Z开发板驱动安装、板级调试、MCU程序烧写、创建编译调试工程步骤;FRDM-KL25Z开发板资源分布图、引脚排列图,全面的开发板参考资料资源。

USB 2.0协议资料

对USB 2.0协议不是很熟的同学在学习FRDM-KL25的USB例程前可以先充充电。

设计案例篇:

基于FRDM-KL25Z开发板的仿微信打飞机游戏

例程篇:

官方例程讲解Kinetis KL25 BME例程1

BME是Bit Manipulation Engine的简称,即位操作模块,它是一个硬件模块,介于外设和内核之间,能够实现具体的位操作,如普通的位操作XOR, AND,OR,位插入BFI等,还能够实现单bit清零,单bit置位,以及提取无符号位等操作。

正因为使用了硬件模块去操作,所以与普通的C代码操作相比,其生成的汇编代码减少了很多,从而减少了整个代码量。

结合官方的BME例程1,讲解了BME的功能,例程代码,流程图以及运行结果。

官方例程讲解Kinetis KL25 BME例程2

BME例程2,是继例程1之后,采用ARM内核的systick作为时间基准,测试使用BME方式配置LPTMR触发ADC采样所消耗的systick计数个数,以及使用普通C代码配置LPTMR触发ADC采样所消耗的systick计数个数之间的差。

结合官方的BME例程2,讲解了BME的功能,例程代码,流程图以及运行结果。

官方例程讲解:Kinetis KL25 TPM模块输入捕获和输出PWM波

大家都知道KL25功耗低的优点,KL25还包含了TPM模块,可以提供输入捕获,输出比较和PWM波输出。

本例详细讲解了TPM模块各种功能配置方法,中断的设置和应用,对重点函数做了详尽注解。

官方例程讲解:Kinetis KL25 低功耗模式下TPM模块输出PWM波

本例中KL25工作于低功耗模式下,通过DMA搬移数据值TPM模块寄存器,输出设定好的波形。

本例中文说明重点讲解了DMA模块,TPM模块配置方法,中断的设置和应用,对重点函数做了详尽注解。

手把手学会官方例程: Kinetis KL25 低功耗模式(上,中,下)

本文对KL25产品的低功耗模式进行了详尽的讲解,重点函数说明,如何进入和退出各种低功耗模式进行了详细的注解。

手把手学会官方例:Kinetis KL25 低功耗模下实现UART-DMA-SRAM的数据传输(上、下)飞思卡尔KL25Z 产品Low Power dma uart demo例程实现MCU在低功耗模式下使用DMA模块将串口UART0获得的数据传输到SRAM内存中。

文档以及代码支持三个软件环境:Keil MDK,IAR ARM IDE,CodeWarrior V10.x。

手把手学会官方例程: KL25 加速度传感器PE例程

飞思卡尔KL25Z 产品accelerometer例程实现在codewarrior 10.x PE环境下,MCU 通过I2C 总线定时读取三轴加速度传感器MMA8451Q的寄存器,将当前X、Y、Z三轴的加速度值通过串口输出的功能。

附中文文档,对加速度例程进行了一步步的讲解,PE模块配置以及重点函数说明,I2C收发流程配置方法等进行了详细的讲解。同时配有操作的图片展示。

手把手学会官方例程:Kinetis KL25 UART例程1指南

飞思卡尔Kinetis L系列KL25产品LQRUG_uart_ex1例程示范了如何配置UART0模块,使其

能以查询或中断这两种方式完成发送接收字符的功能。

重点讲解UART0模块框图及其基本配置,并对重点函数做了详尽注解。

手把手学会官方例程:Kinetis KL25 UART例程2指南

飞思卡尔Kinetis L系列KL25产品的LQRUG_uart_ex2例程实现UART0工作于VLPS低功耗模式,并配置地址匹配作为唤醒源。

手把手学习官方例程:Kinetis KL25 USB例程指南(基础篇)

主要为USB基础概念以及知识的讲解,详细分析了USB的描述符,协议包,传输类型,请求以及枚举过程,最后结合USB分析仪,给出一个通信结构的基础概念。

手把手学习官方例程第二十九篇Kinetis KL25 USB例程指南(进阶篇)

飞思卡尔论坛支持小组推出手把手学会官方例程第二十九篇:Kinetis KL25 USB例程指南(进阶篇),即USB例程文档的第二篇。该篇文档详细介绍了HID设备固件基础、HID设备描述符、HID的特定请求,最后通过USB协议分析仪捕获USB总线数据包,分享HID设备枚举过程中,HID设备与HOST的通信数据。

KL25 ADC ping-pong模式的实现例程

本例程通过CodeWarror中的PE功能实现了基于KL25的ADC乒乓模式采样,满足了需要连续采样的设计需求。(附例程及中文讲解手册)

KL25低功耗模式例程

基于Freedom板的KL25低功耗模式的例程。大家可以把万用表串接到J4上来测量电流。

FAQ:

FAQ-Kinetis系列产品常见问题总结

请问code warrier 10.4怎么建立KL25的工程

MKL25P128 中文数据手册

自制KL25Z电路板极端挑Debugger,求助可能原因

用KEIL开发FRDM-KL25Z板子调试必须用JLINK吗?

KL25 关于GPIO控制的问题

有没有用Codewarrior10.5开发KL25移植好用的操作系统

请教kl25的systick中断

kl25的bootloader的使用

KL25 频繁出现Hard_FaultInterrupt 中断

KL25时钟问题

FRDM KL25 USB模块连上PC机后显示"无法识别USB设备"的原因FreeDOM KL25的USB模块问题

KL25Z仿真,有哪些工具可以使用

KL25的数据手册的看门狗章节

模仿kl25z开发板做了一块板子,想用SWD下载,但是J-Link识别不到如何往MKL25Z芯片里面烧录代码

关于“Kinetis KL25 低功耗模下实现UART-DMA-SRAM的数据传输”的疑惑有没有KL25板子的TSI程序下载?

PC和KL25之间的I2C通讯问题

kl25z128芯片的I2C操作EEPROM的问题

关于KL25Z NVIC的相关配置问题

kl25存储数据的问题

kl25z计数器的问题

kl25定时器的问题

KL25 AD转换硬件触发和软件触发的问题

IAR 6.40, 在option里找不到FRDM-KL25Z对应的设备名

FRDM-KL25Z哪颗芯片提供了128MB的存储空间

kl25z 端口复用的问题

KL25Z如何生成SREC档

官网freedom kl25 开发板如果通过SWD接口进行下载,硬件应该如何搭建?KL25Z接keypad的问题

求KL25z128的pcb封装

KL25Z新增一个LCD component的问题

求KL25Z的USBdemo

KL25能否直接通过opensda连接电脑再用freemaster检测

KL25z128的MCU,无法烧录代码

用了KL25的TSS3.01demo,想知道如何返回数值

MKL25Z的Bootloader问题

FreeDom板KL25内部ADC模块问题

FRDM KL25 晶振上的电阻问题?为什么要去掉

KL25的FTFA功能

kl25z RTC时钟源的问题

关于KL25的ADC模块时钟源---Alternate clock (ALTCLK)

官方例程:Kinetis KL25 低功耗模式问题

FreeScale M0+ MKL25Z4系列mcu的AD转化有没有内部稳定的电压参考源?MKL25Z128输出比较问题

kl25z如何关闭中断

FRDM-KL25Z不能连上IAR

MKL25Z128的MCU,怎么用Bootloader跳转到FW

KL25Z 在VLPR模式最小电流消耗下的核心频率是多少?

KL25 AD模块自校准问题

KL25用jlink调试代码正常运行,但断电重新上电,代码没有运行KL25Z 如何设置FLL的倍频因子?

MKL25Z128请问怎么让usb复位?

MKL25Z128VLK4的功耗?

KL25Z RTC模块初始化失败

飞思卡尔16位单片机MC9S12XS128加密(程序下载不进去,正负极未短路,通电芯片不发烫)后解锁的方法及步骤w

飞思卡尔16位单片机MC9S12XS128加密(程序下载不进去,正负极未短路,通电芯片不发烫)后解锁的方法及步骤 /*****************************************************************************/ *本人用此法成功解救了4块板子【窃喜!】,此说明是本人边操作边截图拼成的,有些是在别的说明上直接截图【有些图本人不会截取,就利用现成的了,不过那也是本人用豆和财富值换来的】,表达不清之处还望见谅,大家将就着看吧!如能有些许帮助,我心甚慰!!! ————武狂狼2014.4.23 /*****************************************************************************/ 编译软件:CW5.1版本,下载器:飞翔BDMV4.6 【1】,连接好单片机,准备下载程序,单击下载按钮出现以下界面 或 (图1.1) 图 1.1——4中所有弹出窗口均单击“取消”或红色“关闭”按钮依次进入下一界面

(图1.2) (图1.3)

(图1.4) ******************************************************************************* ******************************************************************************* 【2】单击出现如下图所示下拉列表,然后单击 (图2.1) 出现下图(图2.2)对话框,按下面说明操作 (图2.2)

飞思卡尔智能汽车设计技术报告

第九届“飞思卡尔”杯全国大学生 智能汽车竞赛 技术报告 学校:武汉科技大学队 伍名称:首安二队参赛 队员:韦天 肖杨吴光星带队 教师:章政 0敏

I

关于技术报告和研究论文使用授权的说明 本人完全了解第九届“飞思卡尔”杯全国大学生智能汽车竞赛关保留、使用技术报告和研究论文的规定,即:参赛作品著作权归参赛者本人,比赛组委会和飞思卡尔半导体公司可以在相关主页上收录并公开参赛作品的设计方案、技术报告以及参赛模型车的视频、图像资料,并将相关内容编纂收录在组委会出版论文集中。 参赛队员签名: 带队教师签名: 日期:

II

目录 第一章引言 (1) 1.1 概述 (1) 1.2 内容分布 (1) 第二章系统总体设计 (2) 2.1 设计概述 (3) 2.2 控制芯片的选择 (3) 2.3 线性 CCD 检测的基本原理 (3) 2.3 系统结极 (5) 第三章机械系统设计 (7) 3.1 底盘加固 (7) 3.2 轮胎处理 (7) 3.3 四轮定位 (8) 3.4 差速器的调整 (12) 3.5 舵机的安装 (13) 3.6 保护杆的安装 (15) 3.7 CCD的安装 (16) 3.8 编码器的安装 (17) 3.9 检测起跑线光电管及加速度计陀螺仪的安装 (18) 第四章硬件系统设计 (19) 4.1 最小系统版 (20) 4.2 电源模块 (21) 4.3 CCD模块 (22) 4.4 驱动桥模块 (23) 4.5 车身姿态检测模块 (24) 4.7 测速模块 (24) 4.8 OLED液晶屏及按键、拨码 (25) 第5章程序设计 (27)

飞思卡尔单片机编程

关于Codewarrior 中的 .prm 文件 网上广泛流传的一篇文章讲述的是8位飞思卡尔单片机的内存映射,这几天,研究了一下Codewarrior 5.0 prm文件,基于16位单片机MC9S12XS128,一点心得,和大家分享。有什么错误请指正。 正文: 关于Codewarrior 中的.prm 文件 要讨论单片机的地址映射,就必须要接触.prm文件,本篇的讨论基于Codewarrior 5.0 编译器,单片机采用MC9S12XS128。 通过项目模板建立的新项目中都有一个名字为“project.prm”的文件,位于Project Settings->Linker Files文件夹下。一个标准的基于XS128的.prm文件起始内容如下: .prm文件范例: NAMES END SEGMENTS RAM = READ_WRITE DATA_NEAR 0x2000 TO 0x3FFF;

READ_ONLY DATA_NEAR IBCC_NEAR 0x4000 TO 0x7FFF; ROM_C000 = READ_ONLY DATA_NEAR IBCC_NEAR 0xC000 TO 0xFEFF; //OSVECTORS = READ_ONLY 0xFF10 TO 0xFFFF; EEPROM_00 = READ_ONLY DATA_FAR IBCC_FAR 0x000800 TO 0x000BFF; EEPROM_01 = READ_ONLY DATA_FAR IBCC_FAR 0x010800 TO 0x010BFF; EEPROM_02 = READ_ONLY DATA_FAR IBCC_FAR 0x020800 TO 0x020BFF; EEPROM_03 = READ_ONLY DATA_FAR IBCC_FAR 0x030800 TO 0x030BFF; EEPROM_04 = READ_ONLY DATA_FAR IBCC_FAR 0x040800 TO 0x040BFF; EEPROM_05 = READ_ONLY DATA_FAR IBCC_FAR 0x050800 TO 0x050BFF; EEPROM_06 = READ_ONLY DATA_FAR IBCC_FAR 0x060800 TO 0x060BFF; EEPROM_07 = READ_ONLY DATA_FAR IBCC_FAR 0x070800 TO 0x070BFF; PAGE_F8 = READ_ONLY DATA_FAR IBCC_FAR 0xF88000 TO 0xF8BFFF;

基于嵌入式STM32的飞思卡尔智能车设计



飞思卡尔智能车大赛是面向全国大学生举办的应用型比赛, 旨在培养创新精 神、协作精神,提高工程实践能力的科技活动。大赛主要是要求小车自主循迹并 在最短时间内走完整个赛道。针对小车所安装传感器的不同,大赛分为光电组、 电磁组和摄像头组。 本文介绍了本院自动化系第一届大学生智能汽车竟赛的智能车系统。 包括总 体方案设计、机械结构设计、硬件电路设计、软件设计以及系统的调试与分析。 机械结构设计部分主要介绍了对车模的改进,以及舵机随动系统的机械结构。硬 件电路设计部分主要介绍了智能车系统的硬件电路设计, 包括原理图和 PCB 设计 智能车系统的软、 硬件结构及其开发流程。该智能车车模采用学校统一提供的飞 思卡尔车模,系统以 STM32F103C8T6 作为整个系统信息处理和控制命令的核心, 使用激光传感器检测道路信息使小车实现自主循迹的功能
关键字:飞思卡尔智能车STM32F103C8T6
激光传感器
第一章 概述

1.1 专业课程设计题目
基于嵌入式 STM32 的飞思卡尔智能车设计
1.2 专业课程设计的目的与内容
1.2.1 目的 让学生运用所学的计算机、传感器、电子电路、自动控制等知识,在老师的 指导下,结合飞思卡尔智能车的设计独立地开展自动化专业的综合设计与实验, 锻炼学生对实际问题的分析和解决能力,提高工程意识,为以后的毕业设计和今 后从事相关工作打下一定的基础。 1.2.2 内容 本次智能车大赛分为光电组和创新做,我们选择光电组小车完成循迹功能。 该智能车车模采用学校统一提供的飞思卡尔车模, 系统以 STM32F103C8T6 作为整 个系统信息处理和控制命令的核心,我们对系统进行了创造性的优化: 其一, 硬件上采用激光传感器的方案, 软件上采用 keil 开发环境进行调试、 算法、弯道预判。 其二,传感器可以随动跟线,提高了检测范围。 其三,独立设计了控制电路板,充分利用 STM32 单片机现有模块进行编程, 同时拨码开关、状态指示灯等方便了算法调试。
1.3 方案的研讨与制定
1.3.1传感器选择方案 方案一:选用红外管作为赛道信息采集传感器。 由于识别赛道主要是识别黑白两种不同的颜色, 而红外对管恰好就能实现区 分黑白的功能,当红外光照在白色KT板上时,由于赛道的漫反射作用,使得一部 分红外光能反射回来, 让接收管接的输出引脚的电压发生变化,通过采集这个电 压的变化情况来区分红外光点的位置情况,以达到区分赛道与底板的作用。 红外管的优点在于价格便宜,耐用;缺点却用很多:1、红外光线在自然环 境中,无论是室内还是室外均比较常见,就使得其抗干扰能力不强,容易受环境 变化的影响。2、调试不方面,由于红外光是不可见光,调试的时候需要采用比 较麻烦的方法来判断光电的位置。3、由于红外管光线的直线性不好,就使得红 外传感器所能准确的判断的最远距离比较小,也就是通常所说的前瞻不够远。

飞思卡尔K60 DMA 中文手册

/*----------------------------------------------------------------------------------------------------------------------------- 桂林电子科技大学 物联网工程 Editor:JaceLin Date:2014.2.5 -------------------------------------------------------------------------------------------------------------------------------- 一、DMA特性 1)k60有16个DMA通道 二、寄存器 1)控制寄存器:DMA_CR 31-18 reserved 17 CX 取消转移,0正常操作,1取消剩下数据转移 16 ECX 错误取消转移,0正常操作,1取消转移 15-8 reserved 14 EMLM 使能副循环映射 0 禁止,TCDn.word2 为32位 1 使能,TCDn.word被重新定义 6 CLM 持续连接模式,0当副循环结束后,再次激活DMA要通过裁决,1不用裁决 5 HALT 停止DMA操作,0正常模式,1停止DMA操作 4 HOE 错误时停止,0正常操作,1当有错误时HALT=1,也就是DMA停止 3 reserved 2 ERCA 使能循环通道裁决, 1 EDBG 使能调试,写0,调试也用DMA,写1,调试时DMA不可用 0 reserved 2)错误状态寄存器DMA_ES 31 VLD 所有错误状态位逻辑或,0没有错误,1表示至少有1个错误没有清除 30-17 保留 16 ECX 转移被取消0没有被取消的转移,1最后一次记录是被取消的转移 15 保留 14 CPE 通道优先错误,0没有通道优先错误,1有 13-12 保留 11-8 ERRXHN 错误通道位/被取消的位(最多16位) 7 SAE 源地址错误,0没有源地址配置错误,1有错误 6 SOE 源偏移错误,0没有源偏移配置错误,1有偏移配置错误 5 DAE 目标地址错误,0没有错,1有错误 4 DOE 目标偏移错误,0没有错误,1有 3 NCE NBYTES/CITER配置错误,0没有,1有 2 SGE Scatter/Gather配置错误,0没有,1有 1 SBE 源总线错误,0没有错误,1有

飞思卡尔MC9S12XS128技术手册翻译AD

飞思卡尔MC9S12XS128技术手册(AD转换部分) 英文资料:飞思卡尔MC9S12XS256RMV1官方技术手册 1.1 XS12系列单片机的特点 XS12系列单片机特点如下: ·16位S12CPU —向上支持S12模糊指令集并去除了其中的MEM, WAV, WAVR, REV, REVW 五条指令; —模块映射地址机制(MMC); —背景调试模块(BDM); ·CRG时钟和复位发生器 —COP看门狗; —实时中断; ·标准定时器模块 —8个16位输入捕捉或输出比较通道;; —16位计数器,8位精密与分频功能; —1个16位脉冲累加器; ·周期中断定时器PIT —4具有独立溢出定时的定时器; —溢出定时可选范围在1到2^24总线时钟; —溢出中断和外部触发器; ·多达8个的8位或4个16位PWM通道 —每个通道的周期和占空比有程序决定; —输出方式可以选择左对齐或中心对其; —可编程时钟选择逻辑,且可选频率范围很宽; ·SPI通信模块 —可选择8位或16位数据宽度;

—全双工或半双工通信方式; —收发双向缓冲; —主机或从机模式; —可选择最高有效为先输出或者最低有效位先输出; ·两个SCI串行通信接口 —全双工或半双工模式 ·输入输出端口 —多达91个通用I/O引脚,根据封装方式,有些引脚未被引出; —两个单输入引脚; ·封装形式 —112引脚薄型四边引线扁平封装(LQFP); —80引脚扁平封装(QFP); —64引脚LQFP封装; ·工作条件 —全功率模式下单电源供电范围3.15V到5V; —CPU总线频率最大为40MHz —工作温度范围–40 C到125 C 第十章模拟—数字转换 10.1 介绍 ADC12B16C是一个16通道,12位,复用方式输入逐次逼近模拟—数字转换器。 ATD的精度由电器规格决定。 10.1.1 特点 ·可设置8位、10位、12位精度 ·在停止模式下,ATD转换使用内部时钟 ·转换序列结束后自动进入低耗电模式 ·可编程采样时间 ·转化结果可选择左对齐或右对齐

freescale MC9S12P128中文手册

1 Chapter1 Device Overview MC9S12P-Family 1.1介绍 The MC9S12P 系列单片机是经过优化后有着低成本、高性能、低引脚数的汽车专业级单片机产品,该产品倾向于弥补高端16位单片及产品如MC9S12XS和低端8位单片机产品之间的空缺。MC9S12P 主要针对于要求使用CAN 或者LIN/J2602通讯接口的汽车应用产品,典型的应用案例包括车身控制器、乘坐人员检测、车门控制、座椅控制、遥控车门开关信号接收器、智能执行器、车灯模块、智能接线器。 The MC9S12P 系列单片机使用了很多MC9S12XS系列单片机相同的功能,包括片内闪存错误纠正代码(ECC)、一个专为数据诊断或者数据存储的单独的数据闪存模块、高速AD转换器和高频调制锁相环(IPLL)有效改善电磁兼容性能。MC9S12P系列单片机提供的所有16为单片机优点和微处理器效率,同时保持飞思卡尔用户熟悉的8位及16位单片机,低成本,功耗,EMC和高效的代码80针QFP、64针LQFP、40针QFN封装产品,最大限度的与MC9S12尺寸的优点,如同MC9S12XS一样可以无需等待外围设备和内存的状态既可以运行16为带款的寻址,MC9S12P系列单片机主要有XS引脚兼容. I/O口在各种模式下都可以使用,同时具有中断功能的I/O口还可以在停止或等待模式下唤醒。 1.2 芯片特性 表一:提供了MC9S12P家庭成员特征摘要, 1.P或D寄存器擦除或者编程需要最低总线频率为1MHZ

1.2.2 芯片功能 ? S12 CPU 内核 ? 高达128 KB具有ECC功能的片上闪存 ? 4 Kbyte带ECC功能的数据闪存 ? 高达6 Kb片上静态存储器(SRAM) ? 具有内部滤波器的锁相环倍频器(IPLL) ? 4–16 MHz 皮尔斯振荡器 ? 1 MHz内部RC振荡器 ? 定时器(TIM) 具有16位输入捕捉、输出比较、计数器脉冲累加器功能 ? 具有8位6通道的脉冲调制模块(PWM) ? 10通道12位分辨率的逐次逼近AD转换器 ? 1个串行通信外部接口(SPI) ? 1个支持局域网通讯串行通信(SCI) 模块 ?一个多可扩展控制器区域网络(MSCAN) 模块(支持CAN 协议2.0A/B) ?片上电压调节器(VREG) 可对内部供电及内部电压整流 ? 自主周期中断(API) 1.3 模块特征 1.3.1 CPU S12 CPU 是一个高速的16位处理单元: ?全16-bit数据通道提供有效的数学运算和高速的数学执行 ? 包含很多单字节指令,可以有效的利用ROM空间 ? 宽域变址寻址功能: —采用堆栈指针作为所有变址操作的变址寄存器 —除了在自增或自减模式下都可以利用程序计数器作为变址寄存器 —使用A\B\D累加器做累加器偏移 —自动变址,前递增(++a)、前递减(--a)、后递减(a--)、后递增(a++)(by –8 to +8) 1.3.2 带ECC功能的片内闪存 ? 高达128 Kb程序闪存空间 — 32 位数据加7 位ECC (纠错码) 允许单字节纠错和双字节纠错 — 512字节擦出扇区空间 —自动编程和擦除算法 —用户设置读写页面边界 —具有可以防止偶然编程或者擦除的保护结构 ? 4 Kb 数据闪存空间 — 16 位数据加6位纠错码允许单字节和双字节纠错功能 — 256 字节的擦出扇区空间 —自动编程和擦除算法 —用户设置读写页面边界 1.3.3 片内静态存储器

飞思卡尔汽车芯片

飞思卡尔推出业界最强大的汽车动力总成系统微 控制器 2011-10-14 18:05:18 来源:与非网 关键字:飞思卡尔Qorivva MCU 动力总成控制系统 2011年10月12日-德国巴登(2011汽车电子系统展览会)–汽车厂商继续通过新的汽车设计将业界标准提升至新高度,通过交付具有更高燃油经济性和更低排放的汽车满足消费者的期望和政府的法规要求。高性能微控制器(MCU)在环保汽车设计领域扮演着重要角色,飞思卡尔半导体(NYSE:FSL)日前宣布推出强大的多核心汽车MCU系列中的第一款产品,帮助汽车设计者更加轻松地提高引擎效率并降低排放污染。 飞思卡尔新推出的多核心Qorivva 32位MPC5676R MCU在Power Architecture?技术的基础上构建,与上一代单核心MPC5566 MCU相比,性能提高了四倍、内存空间提高了一倍、并提供了更多功能。MPC5676R的多种优势允许全球汽车厂商在单一控制器中融合多种尖端技术,例如直喷、涡轮增压和有线系统全驱动。 飞思卡尔负责汽车MCU业务副总裁Ray Cornyn表示,“飞思卡尔充分了解帮助汽车厂商生产更加环保、燃油效率更高的汽车所需的关键技术及其重要性,长期以来我们一直与汽车行业合作,共同开发可以满足其最新一代设计需求的解决方案。在动力总成领域,我们的目标是生产最强大、最灵活的MCU,它可以同时管理最新引擎的所有复杂控制任务,为设计者提供了降低系统复杂性所需的工具和软件平台。” 90纳米双核心MPC5676R MCU配备了: ? 6 MB片上闪存 ?384 KB片上RAM ?三个高性能增强型时序处理器单元(eTPU)

飞思卡尔MC9S12系列单片机地址影射以及分页问题

飞思卡尔MC9S12系列单片机地址影射以及分页问题 对于用MCU的人来说,不一定要明白HCS12(x) memory map的机制和联系。因为如果没有系统地学习操作系统和编译原理之类的课程,确实有些难度。并且,对于DG128 XS128这样的MCU,默认的emory 分配方式已经够用了。从这个意义上讲,搞清楚memory map似乎不必要。 但是,你有没有RAM不够用的情况?有没有想定义变量到FLASH ROM的情况?有没有因为欲提高寻址效率而定义变量到非分页区的情况?有没有写EEPROM但没写成功的情况? 飞思的memory非常灵活,通过地址映射来提高效率是芯片制造商的一惯作风(当然,首先这个CPU 要有这种寻址和内存映射转换机制),但是,纵观HCS12(x) memory map的东西,真是做到极限了。用我以前的话讲是,用有限的资源获得无限的好处了。看看DG128,64K的逻辑空间,映射之后RAM EEPROM FALSH ROM,都可以充分发挥作用,而且扩展FLASH也方便。而XS128更高级一筹,有专门的MMC管理HCS12(x) memory map。 我大体上了解这两个片子的HCS12(x) memory map,因此就此谈谈理解和看法,如有错误,请大家不吝指出 首先,说说6个概念。 1 memory map 地址映射,不要理解成内存映射,内存是RAM。 2 为什么要映射?因为CPU的寻址是对物理地址操作,但是单片机的RESET之后只有相对地址。相对地址,我理 解为是一块一块的,不是连断的。相对地址,顾名思义,是个相对的,没有映射之前,CPU是找不到他的,也 用不了相对地址的数据。粘一句百度上的解释:为了保证CPU执行指令时可正确访问存储单元,需将用户程序 中的逻辑地址转换为运行时由机器直接寻址的物理地址,这一过程称为地址映射。 3 RAM,这个不多说,是存变量和栈的东西,高速,掉电即失。 4 EEPROM,这个是一种特别的FLASH。一般用来保存少量数据,掉电不会丢失。FLASH也是非易失的,SD 卡就是 一种FLASH。EEPROM和普通FLASH的区别,在于读写时的字节操作上。这个我基本上没有体会,因为是相当底层 的东西。 5 FLASH和ROM,在HCS12(X)里,建议把FLASH和ROM等同起来理解。大家的程序就是放在这里面的。还有一个

飞思卡尔智能车技术报告

第六届“飞思卡尔”杯全国大学生智能汽车邀请赛技术报告 学校: 队伍名称: 参赛队员: 带队教师:

关于技术报告和研究论文使用授权的说明 本人完全了解第六届“飞思卡尔”杯全国大学生智能汽车邀请赛关保留、使用技术报告和研究论文的规定,即:参赛作品著作权归参赛者本人,比赛组委会和飞思卡尔半导体公司可以在相关主页上收录并公开参赛作品的设计方案、技术报告以及参赛模型车的视频、图像资料,并将相关内容编纂收录在组委会出版论文集中。 参赛队员签名: 带队教师签名: 日期: 摘要 随着现代科技的飞速发展,人们对智能化的要求已越来越高,而智能化在汽车相关产业上的应用最典型的例子就是汽车电子行业,

汽车的电子化程度则被看作是衡量现代汽车水平的重要标志。同时,汽车生产商推出越来越智能的汽车,来满足各种各样的市场需求。本文以第六届全国大学生智能车竞赛为背景,主要介绍了智能车控制系统的机械及硬软件结构和开发流程。 机械硬件方面,采用组委会规定的标准 A 车模,以飞思卡尔半导体公司生产的80管脚16 位单片机MC9S12XS128MAA 为控制核心,其他功能模块进行辅助,包括:摄像头数据采集模块、电源管理模块、电机驱动模块、测速模块以及无线调试模块等,来完成智能车的硬件设计。 软件方面,我们在CodeWarrior IDE 开发环境中进行系统编程,使用增量式PD 算法控制舵机,使用位置式PID 算法控制电机,从而达到控制小车自主行驶的目的。 另外文章对滤波去噪算法,黑线提取算法,起止线识别等也进行了介绍。 关键字:智能车摄像头图像处理简单算法闭环控制无线调试 第一章引言 飞思卡尔公司作为全球最大的汽车电子半导体供应商,一直致力于为汽车电子系统提供全范围应用的单片机、模拟器件和传感器等器件产品和解决方案。飞思卡尔公司在汽车电子的半导体器件市场拥有领先的地位并不断赢得客户的

飞思卡尔单片机优点

常有人问freescale的单片机有什么优点,今天转篇别人写的文章来,可以部分回答这些朋友的问题,但需要说明的是下面这篇文章主要是针对S08,S12这类单片机说的,飞思卡尔处理器远非只是单片机。飞思卡尔(freescale)半导体公司,就是原来的Motorola公司半导体产品部。于2004年从Motorola分离出来,更名为freescale!freescale系列单片机采用哈佛结构和流水线指令结构,在许多领域内都表现出低成本,高性能的的特点,它的体系结构为产品的开发节省了大量时间。此外freescale提供了多种集成模块和总线接口,可以在不同的系统中更灵活的发挥作用!所有单片机都具有的功能我就不多说了,freescale单片机的特有的特点如下: (1)全系列: 从低端到高端,从8位到32位全系列应有尽有,最近还新推出8位/32位管脚兼容的QE128,可以从8位直接移植到32位,弥补单片机业界8/32 位兼容架构中缺失的一环! (2)多种系统时钟模块:三种模块,七种工作模式 多种时钟源输入选项,不同的mcu具有不同的时钟产生机制,可以是RC振荡器,外部时钟或晶振,也可以是内部时钟,多数CPU同时具有上述三种模块!可以运行在FEI,FEE,FBI,FBILP,FBE,FBELP,STOP这七种工作模式! (3)多种通讯模块接口: 与其它系列的单片机不同,freescale单片机几乎在内部集成各种通信接口模块:包括串行通信接口模块SCI,多主I2C总线模块,串行外围接口模块SPI,MSCAN08控制器模块,通用串行总线模块(USB/PS2)! (4)具有更多的可选模块:某些MCU具有LCD驱动模块,某些MCU带有温度传感器,某些MCU具有超高频发送模块,部分MCu含有同步处理器模块,某写含有同步处理器的MCU 还具有屏幕显示模块OSD,还有少数的MCU具有响铃检测模块RING和双音多频/音调发生器DMG模块! (5)可靠性高,抗干扰性强 (6)低功耗 也许freescale系列的单片机的功耗没有msp430的低,但是他具有全静态的“等待”和“停止”两种模式,从总体上降低您的功耗!新近推出的几款超低功耗已经与msp430的不相上下! (7)多种引脚数和封装选择 可以说freescale系列单片机具有的MCU种类是最多的了,有些MCU本身就有几种不同的引脚数和封装形式,这样用户各异根据需要来选择,总有一款适合你的开发的单片机! 有关于部分人的freescale单片机模块寄存器多,配置困难不容易上手,可以说freescale单片机模块寄存器的确相对多,就拿GPIO来说就有端口数据寄存器、端口数据方向寄存器、端口内部上拉使能寄存器、端口转换率使能寄存器和端口驱动强度选择寄存器5个寄存器,它的寄存器多是为了解决客户对IO端口的高要求和高可靠性要求,如果不考虑这些,您就只需要配置端口数据寄存器、端口数据方向寄存器这两个寄存器,这就和其他的单片机如430和pic 的难易度一样了! 独有的BDM仿真开发方式和单一引脚用于模态选择和背景通信,HCS08 的开发支持系统包括了背景调试控制器(BDC)和片内调试模块(DBG),BDC提供了一个至目标MCU 的单线调试接口,也就是提供了一个便于在片内FLASH 或其它固定存储器编程的接口.

飞思卡尔MC9S12单片机实验程序

定时器模块 1:输出比较 定时器延时,中断点亮led灯 #include /* common defines and macros */ #include /* derivative information */ //void interrupt 8 aabreak(void); //此行可以注释掉******* unsigned int flag=0; void main(void) { EnableInterrupts; TFLG1=0x01; //清中断标志位 DDRB=0xff; PORTB=0xff; //将B口定义为输出,首先输出全0 TSCR1=0x80; //定时器使能,正常工作 TSCR2=0x01; //将定时器进行128分频最高位不要开******** TIE=0x01; //定时器0的中断使能 TIOS=0x01; //将定时器设置为输出比较状态 TCTL2=0x00; //定时器与引脚断开 TFLG1=0x01; //清中断标志位 TC0=0x00f0; //给定时器赋值 for(;;); } #pragma CODE_SEG NON_BANKED void interrupt 8 aabreak(void)//中断号要正确,是中断8 (从0通道开始算起的){ TFLG1=0x01; //清中断标志位 if(flag==0) { PORTB=0xaa; flag=1; } else{ PORTB=0x55; flag=0; } TC0=0x00f0; //给定时器赋值 }

2:输入捕捉 PORTA输出脉冲,有定时器通道0对脉冲进行计数,结果从PORTB输出。 #include /* common defines and macros */ #include /* derivative information */ unsigned int number=0; //脉冲计数初值为0 /***********初始化**********/ void init(){ EnableInterrupts; DDRA=0xff; //将A口定义为输出,用于输出脉冲 DDRB=0xff; //B口用于输出脉冲值 PORTB=0xff; //led灯全暗 TIOS=0x00; //设置定时器通道0为输入捕捉 TSCR1=0x80; //定时器使能 TSCR2=0x01; //设置自由计数器2分频,且禁止定时器溢出中断TCTL4=0x02; //捕捉器仅下降沿捕捉 TIE=0x01; //允许定时器通道0的中断 TFLG1=0x01; //清除中断标志位 } /*********用于产生脉冲*******/ void pulse() { unsigned int i,j; PORTA=0xff; //将A口输出高电平 for(i=0;i<10000;i++) for(j=0;j<100;j++) ; //延时 PORTA=0x00; //使A口输出低电平 } /********主函数*********/ void main(void) { init(); for(;;) { pulse(); } }

飞思卡尔mc9s12d64芯片奏乐

//作者:徐成 //单位:湖北汽车工业学院科技学院 //时间:2013-7-25 //芯片:飞思卡尔mc9s12d64 //功能:让蜂鸣器作《生日快乐》 #include #include "derivative.h" unsigned int data[9]={0,184,168,148,140,124,112,100,88};//音符 /* 0,46 ,42 ,37 ,35 ,31 ,28 ,25 ,off*/ /* 0,1 ,2 ,3 ,4 ,5 ,6 ,7 ,9 */ dword hz[]={5,5,6,5,1,7, 9,5,5,6,5,2,1,9 ,5,5,5,3,1,7,6 ,0,0,4,4,3,1,2,1}; //《生日快乐》简谱 void delay(void) { unsigned long loop_i=5000; while(loop_i--); } void FM(unsigned int HZ) { PWME_PWME3=0; //禁止通道使能 PWMCLK_PCLK3=0;//为通道3选着时钟源B,其余不变0更响 PWMPRCLK_PCKB2=1;//对时钟源B预分频,其余不变0更响 PWMCAE_CAE3=0; //左对齐 PWMCTL_CON23=0;//将2、3通道串联成一个通道,对声音有影响 PWMSCLB=0B00001100;//对时钟源B分频产生SB PWMCNT3=1;//计数器寄存器 PWMPOL_PPOL3=1;//高电平翻转 PWMPER3=HZ; //设置通道周期 PWMDTY3=HZ/2;//设置占空比常数寄存器

飞思卡尔智能车设计报告

飞思卡尔智能车设计报告

目录 1.摘要 (3) 2.关键字 (3) 3.系统整体功能模块 (3) 4.电源模块设计 (4) 5.驱动电路设计 (4) 6.干簧管设计 (5) 7.传感器模块设计 (6) 8.传感器布局 (6) 9.软件设计 (7) 9.1控制算法 (7) 9.2软件系统实现(流程图) (10) 10.总结 (11) 11.参考文献 (12)

1.摘要 “飞思卡尔”杯全国大学生智能汽车竞赛是由教育部高等自动化专业教学指导分委员会主办的一项以智能汽车为研究对象的创意性科技竞赛,是面向全国大学生的一种具有探索性工程实践活动,是教育部倡导的大学生科技竞赛之一。该竞赛以“立足培养,重在参与,鼓励探索,追求卓越”为指导思想,旨在促进高等学校素质教育,培养大学生的综合知识运用能力、基本工程实践能力和创新意识,激发大学生从事科学研究与探索的兴趣和潜能,倡导理论联系实际、求真务实的学风和团队协作的人文精神,为优秀人才的脱颖而出创造条件。该竞赛以汽车电子为背景,涵盖自动控制、模式识别、传感技术、电子、电气、计算机、机械等多个学科的科技创意性比赛。 本文介绍了飞思卡尔电磁组智能车系统。本智能车系统是以飞思卡尔32 位单片机K60为核心,用电感检测赛道导线激发的电磁信号, AD 采样获得当前传感器在赛道上的位置信息,通过控制舵机来改变车的转向,用增量式PID进行电机控制,用编码器来检测小车的速度,共同完成智能车的控制。 2.关键字 电磁、k60、AD、PID、电机、舵机 3.系统整体功能模块 系统整体功能结构图

4.电源模块设计 电源是一个系统正常工作的基础,电源模块为系统其他各个模块提供所需要的能源保证,因此电源模块的设计至关重要。模型车系统中接受供电的部分包括:传感器模块、单片机模块、电机驱动模块、伺服电机模块等。设计中,除了需要考虑电压范围和电流容量等基本参数外,还要在电源转换效率、噪声、干扰和电路简单等方面进行优化。可靠的电源方案是整个硬件电路稳定可靠运行的基础。 全部硬件电路的电源由7.2V,2A/h的可充电镍镉电池提供。由于电路中的不同电路模块所需要的工作电流容量各不相同,因此电源模块应该包含多个稳压电路,将充电电池电压转换成各个模块所需要的电压。 电源模块由若干相互独立的稳压电源电路组成。在本系统中,除了电机驱动模块的电源是直接取自电池外,其余各模块的工作电压都需要经电源管理芯片来实现。 由于智能车使用7.2V镍镉电池供电,在小车行进过程中电池电压会有所下降,故使用低压差电源管理芯片LM2940。LM2940是一款低压稳压芯片,能提供5V的固定电压输出。LM2940低压差稳压芯片克服了早期稳压芯片的缺点。与其它的稳压芯片一样,LM2940需要外接一个输出电容来保持输出的稳定性。出于稳定性考虑,需要在稳压输出端和地之间接一个47uF低等效电阻的电容器。 舵机的工作电压是6伏,采用的是LM7806。 K60单片机和5110液晶显示器需要3.3伏供电,采用的是LM1117。 5.驱动电路设计 驱动电路采用英飞凌的BTS7960,通态电阻只有16mΩ,驱动电流可达43A,具有过压、过流、过温保护功能,输入PWM频率可达到25KHz,电源电压5.5V--27.5V。BTS7960是半桥驱动,实际使用中要求电机可以正反转,故使用两片接成全桥驱动。如图下图所示。

飞思卡尔智能车简介

智能车制作 F R E E S C A L E 学院:信息工程学院 班级:电气工程及其自动化132 学号:6101113078 姓名:李瑞欣 目录: 1. 整体概述 2.单片机介绍 3.C语言 4.智能车队的三个组 5.我对这门课的建议

一、整体概述 智能车的制作过程包括理论设计、实际制作、整车调试、现场比赛等环节,要求学生组成团队,协同工作。内容涵盖自动控制、模式识别、传感技术、电子、电气、计算机、机械与汽车等多学科多专业。 下面是一个智能车的模块分布: 总的来说智能车有六大模块:信号输入模块、控制输出模块、数据处理模块、信息显示模块、信息发送模块、异常处理模块。 1、信号输入模块: 智能车通过传感器获知赛道上的路况信息(直道,弯道,山坡,障碍物等),同时也通过传感器获取智能车自身的信息(车速,电磁电量等)。这些数据构成了智能车软件系统(大脑)的信息来源,软件系统依靠这些数据,改变智能车的运行状态,保证其在最短的时间内按照规定跑完整个赛道。 2、控制输出模块: 智能车在赛道上依靠转向机构(舵机)和动力机构(电机)来控制运行状态,这也是智能车最主要的模块,这个模块的好坏直接决定了你的比赛成绩。 电机和舵机都是通过PWM控制的,因此我们的软件系统需要根据已有的信息进行分析计算得到一个合适的输出数据(占空比)来控制电机和舵机。 3数据处理模块: 主要是对电感、编码器、干簧管的数据处理。信号输入模块得到的数据非常原始,有杂波。基本上是不能直接用来计算的。因此需要有信号处理模块对采集的数据进行处理,得到可用的数据。 4信息显示模块: 智能车调试过程中,用显示器来显示智能车的部分信息,判断智能车是否正常运行。正式比赛过程中可关闭。主流的显示器有:Nokia 5110 ,OLED模块等,需要进行驱动移植。

飞思卡尔单片机 MC9S12XS256PB

Freescale Semiconductor Product Brief MC9S12XS256PB Rev. 4, 11-Nov-2008 MC9S12XS-Family Low Cost 16-Bit Microcontroller Family Covers MC9S12XS256, MC9S12XS128 and MC9S12XS64 Introduction The new MC9S12XS-Family of 16-Bit micro controllers is a compatible, reduced version of the MC9S12XE-Family. These families provide an easy approach to develop common platforms from low-end to high-end applications, minimizing the redesign of software and hardware. Targeted at generic automotive applications and slave CAN nodes, some typical examples of these applications are:Body Controllers,Occupant Detection,Door Modules,RKE Receivers,Smart Actuators, Lighting Modules and Smart Junction Boxes amongst many others.For space-constrained applications, these products are also available in die format. The MC9S12XS-Family retains many of the features of the S12XE-Family including Error Correction Code (ECC) on Flash memory, a separate Data-Flash Module for code or data storage, a Frequency Modulated Locked Loop (IPLL) that improves the EMC performance and a fast ATD converter. MC9S12XS-Family will deliver 32-Bit performance with all the advantages and efficiencies of a 16-Bit MCU.It will retain the low cost,power consumption,EMC and code-size efficiency advantages currently enjoyed by users of Freescale’s existing16-Bit MC9S12and S12X MCU families.Like members of other S12X families,the MC9S12XS-Family will run16-Bit wide accesses without wait states for all peripherals and memories.

飞思卡尔芯片的嵌入式应用

飞思卡尔芯片的嵌入式应用 飞思卡尔(英语:Freescale Semiconductor)是美国的半导体生产厂商。飞思卡尔于2004年由原摩托罗拉的半导体部门组建。飞思卡尔的主要产品为面向嵌入和通讯市场的芯片。其产品包括: 微控制器(Kinetis ARM? MCU、 Qorivva(5xxx)32位Power Architecture MCU、 MAC57Dxxx 32位ARM? MCU、 ColdFire+/ColdFire 32位MCU、 8位MCU、 16位MCU、 数字信号控制器、 MCU编程中心)、 处理器(i.MX ARM?应用处理器 Vybrid ARM?控制器解决方案 QorIQ处理平台 PowerQUICC通信处理器 Power Architecture主处理器 图像识别处理器 加密协处理器 StarCore高性能DSP DSP56K/Symphony DSP)、 模拟技术与电源管理、 射频、 传感器 嵌入式系统的定义:“用于控制、监视或者辅助操作机器和设备的装置(Devices Used to Control,Monitor or Assist the Operation of Equipment,Machinery or Plants)”。 嵌入式系统包括: 1、嵌入式微控制器(16位、8位、以及8位以下的CPU,典型代表就是单片机) 2、嵌入式微处理器(32位,以及32位以上的称为处理器,典型为ARM核的处理器) 3、DSP(Digital Signal Processing,数字信号处理器) 4、SOC(System on Chip,片上系统,就是把所有的模块都做到一块芯片上) 飞思卡尔芯片的嵌入式应用实例: 一、飞思卡尔为未来智能电网开发解决方案: 飞思卡尔不仅提供智能仪表设计所需要的芯片产品,而且提供完美解决方案。 对于公共事业单位如供电厂来说,如何优化配电基础设施,防止可能出现的大面积停电,以及如何有效的为最终用户提供能源服务,都需要智能仪表。 在计量大会上,飞思卡尔展示了其单相电表、PLM(电力线调制)等解决方案,如图所示。

飞思卡尔S12单片机ECT模块使用实例

/** ################################################################### ** Filename : Project_2.c ** Project : Project_2 ** Processor : MC9S12XEP100CAG ** Version : Driver 01.14 ** Compiler : CodeWarrior HCS12X C Compiler ** Date/Time : 2014-5-21, 8:55 ** Abstract : ** Main module. ** This module contains user's application code. ** Settings : ** Contents : ** No public methods ** ** ###################################################################*/ /* MODULE Project_2 */ /* Including needed modules to compile this module/procedure */ #include "Cpu.h" #include "Events.h" #include "Bit1.h" #include "Bit2.h" /* Include shared modules, which are used for whole project */ #include "PE_Types.h" #include "PE_Error.h" #include "PE_Const.h" #include "IO_Map.h" /* User includes (#include below this line is not maintained by Processor Expert) */ /************************************************************/ /* 初始化ECT模块*/ /************************************************************/ void initialize_ect(void){ //ECT_TSCR1_TFFCA = 1; // 定时器标志位快速清除 ECT_TSCR1_TEN = 1; // 定时器使能位. 1=允许定时器正常工作; 0=使主定时器不起作用(包括计数器) ECT_TIOS = 0x03; //指定所有通道为输出比较方式 ECT_TCTL2_OM0 = 0; // 后四个通道设置为定时器与输出引脚断开 ECT_TCTL2_OL0 = 1; // 前四个通道设置为定时器与输出引脚断开 ECT_TCTL2_OM1 = 0; // 后四个通道设置为定时器与输出引脚断开 ECT_TCTL2_OL1 = 1; // 前四个通道设置为定时器与输出引脚断开 //ECT_DL YCT = 0x00; // 延迟控制功能禁止 // ECT_ICOVW = 0x00; // 对应的寄存器允许被覆盖; NOVWx = 1, 对应的寄存器不允许覆盖

相关文档
最新文档