- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
M16C族单片机编程入门
M16C族单片机为原三菱电机生产的16位CISC微控制器。主要特点为:低电压,低功耗,抗干扰性强具备大容量FLASH ROM, SRAM丰富的外设,如定时器,AD,DA,CAN控制器等所有这些特性,使M16C广泛应用汽车,电动车,工业设备及家电产品上。下面我们讲讲如何在M16C平台下编程。1. 使用HEW新建一个工程。打开HEW,选择Create a new project workspace,点OK。选择CPU family,这里我们选择M16C选项。工具链Tool chain我们默认选择Renesas M16C Standard。好了,接下来我们要输入一个工程名字,在workspace name里输入m16c_test。接下来,注意,也是最重要的一步,在左边的project types下面,我们选择C source startup Application这个选项,该选项的含义是你将建立一个C语言开始的工程。当然,如果选择第一个Application,则为汇编语言开始的工程。考虑到大多数朋友对M16C的汇编不是很熟悉,我们这里以C语言工程为参考。点确定后,继续选择工具链版本5.43.00,CPU Series我选择为M16C/60, CPU Group我选择为6N4,然后点next,继续点next使用默认选项,最后选择targets为M16C E8a SYSTEM,这是是你的CPU要用到的仿真器,我们一般使用瑞萨产的小型ON Chip debugger仿真器E8a.点next,最后点Finish。OK,我们的一个C语言工程已经建好了。2. 工程源文件分析我们发现我们建的m16c_test工程里面有一些源代码文件。下面我们对这些文件进行分析。(注意:建立工程时,选择不同的选项可能会产生不同的源代码文件,不过这不影响我们的使用)m16c_test.c源代码:/*****************************/void main(void){?}该文件是main()函数。你的所有应用函数都会在main()里调用resetprg.c源代码:/*****************************/#include sfr6n4.h#include typedefine.h#include resetprg.hextern _UINT??? _stack_top,_istack_top;//DEF_BANKSELECT;DEF_SBREGISTER;#pragma entry startvoid start(void);extern void initsct(void);extern void _init(void);void exit(void);void main(void);#pragma section program interrupt void start(void){?_isp_?= _istack_top; ?// set interrupt stack pointer?prcr?= 0x02;??// change protect mode register?pm0?= 0x00;??// set processor mode register?prcr?= 0x00;??// change protect mode register?_flg_?= __F_value__;?// set flag register#if __STACKSIZE__!=0?_sp_?= _stack_top; ?// set user stack pointer#endif?_sb_?= 0x400;?// 400H fixation (Do not change)?// set variable vectors address?_asm(?ldc?#((topof vector)16)0FFFFh,INTBH);?_asm(?ldc?#(topof vector)0FFFFh,INTBL);?initsct();??// initlalize each sections#if __HEAPSIZE__ != 0?heap_init();??// initialize heap #endif#if __STANDARD_IO__ != 0?_init();???// initialize standard I/O#endif?_fb_ = 0;?// initialize FB registe for debugger?main();???// call
您可能关注的文档
最近下载
- 水产品加工学课件(PPT 61页).ppt
- 睡眠信念和态度问卷(DBAS).doc VIP
- GB 50026-2020 工程测量标准.docx
- 防滑地砖楼地面施工工艺流程.doc
- 楼地面工程监理细则(DOC).docx VIP
- 2×105平方米烧结机机头烟气脱硫工程可行性研究报告.doc
- 页岩气战略调查井钻井技术要求.pdf VIP
- 【部编版】《道德与法治》三年级下册第8课《大家的“朋友》优质课件.pptx
- 7.2 亚洲的人文环境(课件)-【开课了】2024-2025学年七年级地理下册同步备课课件+教学设计(人教版2024).pptx VIP
- GB50229-2019 火力发电厂与变电站设计防火标准.docx
文档评论(0)