历史上的今天
返回首页

历史上的今天

今天是:2025年02月22日(星期六)

2020年02月22日 | PlC单片机C语言程序设计(10)

2020-02-22 来源:eefocus

4.C程序pic07.c的SlM软件仿真调试


在《PIC单片机C语言程序设计(8)》和《PIC单片机C语言程序设计(9)》中,我们已对C程序pic07 C进行了编辑和编译,现在需要查看该程序能否达到预期的设计目标,即能否完成pic07.C的0~99秒增量计时LED数码显示功能(脉冲发生器),因此需要调试程序。


调试程序,可以使用MPLABICD2在线调试器、MPLABICE2000硬件仿真器等开发工具。对于初学C语言程序,又没有上述硬件仿真调试器的读者,最好选用MPLAB SIM软件模拟仿真器进行程序的调试。


模拟仿真调试是检查程序是否正确,能否实现预期功能的有效手段。有了它,可以实现程序的“单步运行”、“单步越过”、设置“断点”、用软件跑表直接测试延时函数的准确计时等等,对初学C语言编程者特别有用。


PTC单片机的C语言程序,是由函数、表达式和各种运算符组成的。初学C语言程序时,很难清楚看出程序是如何运行的,而利用程序的模拟仿真,则可直观看到程序运行的整个过程。


(1) 模拟仿真的主要命令及功能


PIC单片机C语言程序的SIM软件的模拟仿真,是在MPLAB IDE集成开发环境(C语言)中进行的。操作时,只需利用MPLAB 1DE中的有关菜单,如Debugger(调试)、SelectTool等命令项,即可完成模拟仿真操作。为了方便读者查看程序或操作,特将模拟仿真时常用的主要命令和功能汇集起来,如表5所示。



推荐阅读

史海拾趣

全志(Allwinner)公司的发展小趣事

随着平板市场的逐渐饱和,全志科技开始寻求新的增长点。公司在保持原有产品线优势的同时,积极拓展多品类产品线,实施了营销端BU化,并提出了未来大方向的MANS战略。这一转型不仅增强了公司的市场竞争力,也为公司的长期发展打开了新的局面。

Appointech Inc公司的发展小趣事

为了进一步扩大市场份额,Appointech Inc公司开始积极拓展海外市场。通过与国际知名企业的合作,公司成功打入国际市场,产品销量大幅提升。同时,公司还积极参加国际电子展会和交流活动,与全球同行建立了广泛的合作关系,为公司的长远发展奠定了坚实的基础。

国产公司的发展小趣事
使用示波器等工具观察输入和输出信号的波形,检查是否存在失真、噪声等问题。
Alan Industries Inc公司的发展小趣事

随着产品技术的不断提升,Alan Industries Inc.开始积极拓展市场。公司制定了详细的市场营销策略,通过线上线下的多渠道推广,成功将产品打入国内外市场。同时,公司还注重品牌建设,通过优质的产品和服务赢得了消费者的信任和口碑。随着品牌知名度的提升,公司的市场份额不断扩大,成为电子行业中的佼佼者。

ABC [ABC Taiwan Electronics Corp]公司的发展小趣事

随着全球电子市场的不断扩大,ABC Taiwan Electronics Corp开始实施国际化战略。公司积极参与国际电子展会,与国外客户建立合作关系,将产品推向国际市场。同时,公司还加强了对国际标准和法规的研究,确保产品符合国际质量要求。通过不断拓展海外市场,ABC的销售额和市场份额逐年攀升,成为了国际知名的电子零件供应商。

FLEX LTD公司的发展小趣事

进入新世纪,ABC Taiwan Electronics Corp面临着产业升级和技术创新的双重挑战。公司加大了对研发的投入,不断推出具有竞争力的新产品。同时,公司还引进了先进的生产设备和管理理念,提升了生产效率和产品质量。通过产业升级和技术创新,ABC成功应对了市场的变化和挑战,保持了稳健的发展态势。

问答坊 | AI 解惑

自动增益放大器

本帖最后由 paulhyde 于 2014-9-15 03:00 编辑 自动增益放大器  …

查看全部问答>

flash 驱动的SECTOR, block的size,BlockNum配置问题

最近这个把我搞得头痛死了,一直没搞定。 用的是nor flash ,J3 32M 换成S29  128M 看到网上高手的以前回的一些贴子大致明白应该怎么改: 1 在OEMAddressTable中将32MB改成128MB,这样才能在虚拟内存地址中保留足够的地址空间 2 正确 ...…

查看全部问答>

Dsp - Digital Filter Designer'S Handbook

Dsp - Digital Filter Designer\'S Handbook…

查看全部问答>

菜鸟求助定时器

上面是官方代码操作定时器中断 那定时的时间是怎么算的, 还有那个TIMPeriod_level是干什么的 为什么要设置??…

查看全部问答>

超级电容驱动LED灯组的电容容量选取

一节锂电池供电3-3.6V 输出电压5.5V,充电电流15mA 充满电压:5V,放电时间:10ms,放电电流:12A 电池连续工作时间:720小时 求解超级电容怎么选择 …

查看全部问答>

关于 FPGA 实现车牌识别

用C语言实现 车牌识别,除了 汉字之外,,对于字母和数字,识别还是有点思路的。 不知道用FPGA ,这个识别,会占用多少的资源,好不好做?? 有没有人做过的,分享一下。 其实想用 软核 来实现 车牌识别,不知道,是不是有点啰嗦?? …

查看全部问答>

用stc15f2k60s2的pca产生pwm控制呼吸灯,但没有呼吸灯效果,请大神指导

#include #define uint unsigned int #define uchar unsigned char unsigned char code bijiaozhi[40]={ 1,1,2,2,3,4,6,8,10,14,19,25,33,44,59,80,107,143,191,255, 255,191,143,107,80,59,44,33,25,19,14,10,8,6,4,3,2,2,1,1}; void pcaIni ...…

查看全部问答>

28035 ecan接收标志位会偶尔被清除,但是邮箱内的数据有更新

DSP28035,有看过例程;使用循环扫描接收 void can_inrecieve(Uint16 MBXnbr) { volatile struct MBOX *Mailbox; rmsqueue->head = 0; Mailbox = &ECanaMboxes.MBOX0+MBXnbr;     rmsqueue->ms_rebuffer[0].cob_id = Mailbox->MSGI ...…

查看全部问答>