下载
加入VIP
  • 专属下载特权
  • 现金文档折扣购买
  • VIP免费专区
  • 千万文档免费下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 EM78P153程序框架

EM78P153程序框架.doc

EM78P153程序框架

张明哲
2017-09-30 0人阅读 举报 0 0 暂无简介

简介:本文档为《EM78P153程序框架doc》,可适用于综合领域

EMP程序框架EMC系列单片机有多种型号每个IC由于设计方面的原因各有不同例如EMP的中断向量位置跟EMPEMP等都不相同如果只用一种IC开发的话那倒问题不大如果工作用用到各种IC的话来回切换给写程序带来了不便。于是我们想建立一个模板结合宏的强大功能方便的初始化IC迅速建立运行环境其实这里做的有点类似C里面的runtime初始化部分也类似bootloader总之目的就是快速建立环境我们只需要从main函数开始写而不需要花精力在芯片初始化部分。嘿嘿理论上来这样算是比较方便的但不是究极的方便看过UBOOT就会有感触为啥人家能支持那么多CPU说到尾还是利用了宏定义的强大功能。当然我在构思是否能利用一下shell的强大功能实现一个特殊的软件恩思考一下……宏方面的使用原理其实不难本质上跟C是一样的道理上来说这东西不难关键是比较烦得有人去学写繁琐的宏定义好吧我吃螃蟹了搞了一大堆东西出来非常的方便。本文章所有东西原创。主程序:EMPDT*项目:EMP程序框架作者:EtualEtualcom日期:编译平台:WicePlus***包含下面用到的宏定义符号*include"headh"**寄存器定义*ABUFFEQUxPSWBUFFEQUxIntrCntEQUx****中断向量*ORGXjmpstartORGXjmpinttccORGx**TCC中断服务函数*INTTCC:movabuff,aswapabuffswapapswmovpswbuff,a**产生几个基准时间*incIntrCnt**在这里添加需要的中断函数*nopintend:bcxf,ClearTCCinterruptflagswapapswbuffmovpsw,aswapaabuffretiMAINPROGRAMstart:callSysInitloop:**主循环添加实际项目的功能模块*comxHaltProc:eniwdtc**大循环周期ms*=ms*mova,suba,Intrcntjbspsw,cjmpHaltProcclrIntrcntjmploop*功能:系统初始化。*SysInit:disijbspsw,程序看门狗复位纠错处理jmperrorprocInitSRAM:*上电清空所有的RAM调用格式:CLEARALLRAMFROM,TO宏参数定义:FROM:开始地址TO:结束地址*nopCLEARALLRAMInitCont:*TCC定时器设置调用格式:CONTSETUPMACROarg宏参数定义:TCC~TCC预分频TCCSRCINTTCCSRCEXTTCC源选择INT:内部时钟EXT外部计数TCCEDGERISETCCEDGEFALL触发弦选择RISE上升弦FALL下降弦TCCPRESCALWDTPRESCAL预分频分给TCC还是WDT*nopCONTSETUPTCCPRESCAL|TCC|TCCSRCINTInitIO:*IO口方向以及上下拉设置IOWMACROARG,ARGIORREG,REGIORREG>REGIOWREG,REGIOWREG>REG*nopmova,XiowxportIOmova,xiowXportIOmova,XFFiowxbPULLDOWN:ENABLE,:DISABLEmova,XiowxcOPENDRAIN:DISABLE,:ENABLEmova,xffiowXDPULLHIGH:ENABLE,:DISABLEInitWatchdog:*看门狗设置WDTSETUPMACROarg宏参数定义:WDTENABLEWDTDISABLE允许看门狗ROCENABLEROCDISABLEROPTIONEISIOEISINTP作为IO还是外部中断*nopWDTSETUPWDTENABLE|ROCDISABLE|EISIOInitInterrupt:*中断设置IMRSETUPMACROargargument:IMRTCCIMREXT*nopIMRSETUPIMRTCCret宏定义headh*项目:EMP宏定义作者:EtualEtualcom日期:******************************************************寄存器名字定义*****************************************************R==XTCC==XPC==XPSW==XC==DC==Z==POWERDOWN==TIMEOUT==R==XP==XP==XP==XR==XR==XRA==XARB==XBRC==XCRD==XDRE==XERF==XFIOC==XIOC==XIOC==XIOC==XIOC==XIOCA==XAIOCB==XBIOCC==XCIOCD==XDIOCE==XEIOCF==XF******************************************************端口变化唤醒******************************************************IOCHANGEWAKEUPMACROmova,b设置WDT预分频contwwdtc清看门狗iorxeanda,xf关闭看门狗iowxemova,xffmovx,x保存端口数据iorxfora,x置能端口变化中断iowxfdisi关闭全局中断nopslep睡眠nopwdtcENDM******************************************************CONTREGISTER******************************************************TCC==X*TCCPRESCALE:(DEFAULT)*TCC==X*TCCPRESCALE:*TCC==X*TCCPRESCALE:*TCC==X*TCCPRESCALE:*TCC==X*TCCPRESCALE:*TCC==X*TCCPRESCALE:*TCC==X*TCCPRESCALE:*TCC==X*TCCPRESCALE:*TCC==X*TCCPRESCALE:**FOSC*PRESCAL**WDT==XWDT==XWDT==XWDT==XWDT==XWDT==XWDT==XWDT==X****************************************************TCCSRCINT==X*INTERNALINSTRUCTIONCLOCK*TCCSRCERX==X*EXTERNALCLOCK(TCCPPIN)(DEF)*TCCEDGERISE==XTCCEDGEFALL==XTCCPRESCAL==XWDTPRESCAL==X****************************************************CONTSETUPMACROARGmova,ARGcontwENDM******************************************************WDTENABLE******************************************************WDTENABLE==xWDTDISABLE==xROCENABLE==XROCDISABLE==XEISIO==XEISINT==X****************************************************WDTSETUPMACROARGmova,ARGiowxeENDM******************************************************INTERRUPTMASKREGISTER******************************************************IMR==XFIMRTCC==XIMRICI==XIMREXT==XIMRALLDISABLE==XIMRALLENABLE==XFF****************************************************IMRSETUPMACROARGmova,ARGiowxfENDM******************************************************CLEARALLRAM******************************************************CLEARALLRAMmacromova,xmovx,aclrram:clrxincxmova,xfanda,xjbsx,jmpclrramENDM

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

文档小程序码

使用微信“扫一扫”扫码寻找文档

1

打开微信

2

扫描小程序码

3

发布寻找信息

4

等待寻找结果

我知道了
评分:

/13

EM78P153程序框架

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利