freetech

kinetis下的NRF24L01+通信例程

有了前面的SPI例程,我们再来看一个实际应用SPI的例子。NRF24L01是工作在2.4GHz公共频段的射频芯片,其接口是SPI的,虽然kinetis的SPI有自动片选功能,但每发完一串比特流(本例中是1字节)片选信号要变成一次无效电平,NRF24L01要求同一命令和数据中间片选信号要一直有

kinetis的SPI例程

kinetis有多达3个SPI接口,收发各带4个16位的FIFO,可支持自动片选。可工作于主、从模式。SPI是同步串口,发一个字节(或字)时也收一个字节(或字),其通信通过4种功能的线来完成:SCK-时针线,用于主设备向从设备提供时钟。SIN-串行数据输入SOUT-串行数据输出PCSn-片

scanf的用法汇总

大家常见到类似scanf(“%d,%c,&i,&j”);的用法,你见过下面的用法吗?scanf(“%[ABC],s”);scanf(“%[A-Z],s”);scanf("%d%*c%d",&x,&y);下面详细说明scanf的用法:scanf函数,与printf函数一样,都被定义在st

kinetis的UART串口(DMA模式)

前面的例子中,串口的收发采用中断模式,虽然在一定程度上解放了CPU,但每个字节都要中断一次,在115200波特率下,约8.7uS就要中断一次,CPU仍然很累。直接存储器访问(DMA)方式可以进一步解放CPU,本例采用DAM方式实现每次100字节数据发送与接收。DMA处理发送是最有效

在装有Codewarrior10.2的电脑上安装MQX3.8.1

一、先安装Codewarrior10.2二、安装MQX3.8.1三、让Codewarrior10.2的菜单中出现MQX3.8.11、打开命令提示符,切换至install_cw10.2_plugin.bat所在目录,如下图:2、install_cw10.2_plugin.bat<CW_INSTAL_DIR>,<CW_INSTAL_DIR>是Codewarrior10.2所在目录(

kinetis的UART串口(中断模式)

前面的例子中,串口的收发采用查询模式,程序要不断查询串口状态,这样不利于将CPU解放出来做其它事情。本例采用中断方式实现数据发送与接收。要使用中断方式,需做下面3件事情:1、UART5_C2寄存器的接收中断使能,发送中断使能。2、NVICISER寄存器使能UART对应中断。3

虚拟机的2种解释

说起虚拟机我们很容易想起VMWARE,但之前还有个概念叫JAVA虚拟机,然而这2种虚拟机本质上是大不相同的。那么什么叫虚拟机呢?“虚拟机”这个概念在实际应用中有两种语境。第一种是“虚拟主机”的概念,第二种是“运行环境”的概念。这两

HCS08微秒级的延时的函数

一个应用中用到精确延时,用纯C程序不太容易实现,用汇编写了一段分享给大家。下面程序是总线时钟8MHz的情况下做的:voiddelayus(wordus){asm{aix#-2&nb

kinetis的触摸按键TSI

使用硬件触摸感应接口之前,我们先看看软件通过GPIO实现触摸的方法:如上图,GPIO接个上接电阻(可用内部的或外部的),PCB上画个触摸盘即可。触摸盘等效于一个对地的电容,手指也等效于一个对地的电容,手指按上时相当于2电容并联,不按时只有一个电容。程序先向IO口写

kinetis的DAC例程

kinetis内置12位DAC,可实现模拟量输出。本例用DAC实现1个锯齿波输出。在使用DAC之前要先配置系统集成模块,打开DAC的时钟。下面介绍相关寄存器:DACx_DATnH-数据寄存器高字节,仅低4位有效。DACx_DATnL-数据寄存器低字节。DACx_C0-控制寄存器0。DACx_C1-控制寄存器1。D

kinetis的RS485例程

RS485是半双工通信协议,是个UART经RS485电平转换芯片后用差分信号实现远距离传输。RS485电平转换芯片有个发送使能引脚,为了获得发送权发送数据前要将该引脚设成使能状态(本例中是高电平),发送完毕再将该引脚设成低电平以释放总线。下图中第1路(黄线)是数据引脚,

kinetis的红外收发例程&mdash;&mdash;基于UART串口进行38kHz载波通信

前面已经有了串口、FTM、模拟比较器等例程,这次综合用起来实现一个基于UART串口进行38kHz载波红外通信的例子。kinetis为红外载波通信做了优化,需要很少的外围器件即可实现。另一篇文章总结了实现38kHz调制的6种电路http://blog.chinaaet.com/detail/28795.html,其中

kinetis的模拟比较器例程

模拟比较器(Comparator)模块提供了一个电路,可以比较两路模拟电压。在过电压、过电流、欠压判断电路中经常用到。kinetis内置了模拟比较器,且为方便应用增加了些增强功能:1、内置6位DAC:可以用DAC产生一个比较阀值而省去一些外部分压电阻。从1/64参考电压到参考电

kinetis的UART串口(查询模式)

kinetis有多达6个UART串口,可支持MODEM、红外、ISO7816等操作模式。UART寄存器有很多,但基本应用只关注其中的几个就够了。下面介绍常用寄存器:UARTx_BDH:UARTx_BDL-低13位是波特率发生器,UARTx_BDH的第6位是RXD输入引脚有效边沿中断使能位,为1时使能;UARTx_BD

kinetis的时钟分配——32.768石英晶体产生96MHz系统时钟

kinetis有4种振荡源,分别是4MHz内部RC振荡器、32kHz内部RC振荡器、外部主振荡器、外部RTC时钟振荡器。工作时又需要核时钟/系统时钟、总线时钟、FlexBus总线时钟、FLASH时钟、USB时钟等多种不同频率的时钟。这些时钟是通过MCG模块选择4种振荡源经或不经过FLL或PLL输出的