PIC反汇编(一)汇编程序和PIC

发布者:科技创新实践者最新更新时间:2022-01-06 来源: eefocus关键字:PIC  反汇编  汇编程序 手机看文章 扫描二维码
随时随地手机看文章

前言

由于一些要求,现在需要将一段hex文件反汇编成为C,那么首先要了解的就是PIC和汇编语言的概况。


1、PIC

其实按照实际来讲,PIC也不过是一种MCU的描述,就想C和JAVA对于编程语言一样,我们了解PIC也不过是通过他的功能,特性以及使用场合来接触,然后根据自己的需要去了解内部结构,总体框架。

这里我引用一段大佬对于pic的描述 1


PIC到底有什么优势?也许你也会有这样的疑问,所以我在这里略谈几点自己的看法。NGE自动化在线网

(1)PIC最大的特点是不搞单纯的功能堆积,而是从实际出发,重视产品的性能与价格比,靠发展多种型号来满足不同层次的应用要求。就实际而言,不同的应用对单片机功能和资源的需求也是不同的。比如,一个摩托车的点火器需要一个I/O较少、RAM及程序存储空间不大、可靠性较高的小型单片机,若采用40脚且功能强大的单片机,投资大不说,使用起来也不方便。PIC系列从低到高有几十个型号,可以满足各种需要。其中,PIC12C508单片机仅有8个引脚,是世界上最小的单片机。NGE自动化在线网

该型号有512字节ROM、25字节RAM、一个8位定时器、一根输入线、5根I/O线,市面售价在3-6元人人民币。这样一款单片机在象摩托车点火器这样的应用无疑是非常适合。PIC的高档型号,如PIC16C74(尚不是最高档型号)有40个引脚,其内部资源为ROM共4K、192字节RAM、8路A/D、3个8位定时器、2个CCP模块、三个串行口、1个并行口、11个中断源、33个I/O脚。这样一个型号可以和其它品牌的高档型号媲美。NGE自动化在线网

2)精简指令使其执行效率大为提高。PIC系列8位CMOS单片机具有独特的RISC结构,数据总线和指令总线分离的哈佛总线(Harvard)结构,使指令具有单字长的特性,且允许指令码的位数可多于8位的数据位数,这与传统的采用CISC结构的8位单片机相比,可以达到2:1的代码压缩,速度提高4倍。NGE自动化在线网

3)产品上市零等待(Zerotimetomarket)。采用PIC的低价OTP型芯片,可使单片机在其应用程序开发完成后立刻使该产品上市。NGE自动化在线网

4)PIC有优越开发环境。OTP单片机开发系统的实时性是一个重要的指标,象普通51单片机的开发系统大都采用高档型号仿真低档型号,其实时性不尽理想。PIC在推出一款新型号的同时推出相应的仿真芯片,所有的开发系统由专用的仿真芯片支持,实时性非常好。就我个人的经验看,还没有出现过仿真结果与实际运行结果不同的情况。NGE自动化在线网

5)其引脚具有防瞬态能力,通过限流电阻可以接至220V交流电源,可直接与继电器控制电路相连,无须光电耦合器隔离,给应用带来极大方便。NGE自动化在线网

6)彻底的保密性。PIC以保密熔丝来保护代码,用户在烧入代码后熔断熔丝,别人再也无法读出,除非恢复熔丝。目前,PIC采用熔丝深埋工艺,恢复熔丝的可能性极小。NGE自动化在线网

7)自带看门狗定时器,可以用来提高程序运行的可靠性。NGE自动化在线网

8)睡眠和低功耗模式。虽然PIC在这方面已不能与新型的TI-MSP430相比,但在大多数应用场合还是能满足需要的。NGE自动化在线网


2、汇编语言和反汇编语言

这里我也想用一段通俗的语言来解释汇编语言,其实我们可以简单的将语言分为高级语言和机器语言,两个大类。区别在于机器不能识别高级语言,而人类难以理解机器语言。那么为了让人类能够在较为容易的情况下编程,那么我们就有了传统的编译过程,也就是由高级语言到机器语言过程

例如c语言的编译过程:C->汇编语言->机器语言

分别对应的格式则为: .c->.asm->.hex

关键字:PIC  反汇编  汇编程序 引用地址:PIC反汇编(一)汇编程序和PIC

上一篇:PIC16F1823开发笔记(一)准备和开发环境,资料推荐
下一篇:PIC16F883和TLC5615(DA)数模转化实验,呼吸灯

推荐阅读最新更新时间:2024-11-09 18:40

PIC单片机的特点以及不足之处全面分析
据调查,pic单片机是相关人员使用的最多硬件之一。因此,凡入门者需对pic单片机保持一定的了解。为此,本文为大家带来三部分内容:1.pic单片机简介,2.pic单片机特点,3.pic单片机不足之处。通过本文,希望大家对pic单片机存在一个简单的了解。 一、pic单片机简介: PIC单片机(Peripheral Interface Controller)是一种用来可开发的去控制外围设备的可编程集成电路(IC)。由美国Microchip(微星)公司推出的PIC单片机系列产品,首先采用了RISC结构的嵌入式微控制器,其高速度、低电压、低功耗、大电流LCD驱动能力和低价位OTP技术等都体现出单片机产业的新趋势。现在PIC系列单片机在世
[单片机]
<font color='red'>PIC</font>单片机的特点以及不足之处全面分析
采用PIC单片机进行智能型漏电断路器的智能化设计
本文叙述了剩余电流产生的原因及危害,设计了一套智能型漏电断路器,并给出了硬件结构和软件设计。试验结果表明:该智能断路器质量可靠、性能稳定、完全达到了国家标准的要求。 电气接地故障中电弧性对地短路是引发电气火灾的重要原因。电弧性对地短路具有很大的阻抗和电压降,它限制了故障电流,使过电流保护器不能动作或不能及时动作来切断电源,而几百毫安的漏电弧产生的局部高温可达2000℃以上,足以引燃周围的可燃物而引起火灾。况且,用电设备分布在建筑物的各个角落,危害范围广,如不对系统的漏电进行监测和防控,就会对人身和财产安全构成威胁,存在很大的火灾隐患。智能型漏电断路器能准确监控电气线路的故障和异常状态,能有效预防常见的因漏电导致接地电弧所引
[单片机]
采用<font color='red'>PIC</font>单片机进行智能型漏电断路器的智能化设计
用延时实现PIC单片机LED流水灯
用延时实现P IC 单片机 LED 流水灯 ;**************************************************** __CONFIG 3F39H;设置配置位中振荡方式为XT,其它全部禁止或关闭 ;**************************************************** status equ 3h ;定义状态寄存器地址 portc equ 7h ;定义端口C的数据寄存器地址 trisc equ 87h ;定义端口C的方向控制寄存器地址 flag equ 25h ;定义一个控制左移/右移的标志寄存器 ;*****
[单片机]
pic单片机A/D转换程序
//选择RAO做为模拟输入通道; //连续转换4次再求 平均值 做为转换结果 //最后结构只取低8位 //结果送 数码管 的低3位显示 #include p IC .h //包含 单片机 内部资源预定义 __CONFIG(0x1832); //芯片配置字,看门狗关,上电延时开,掉电检测关,低压编程关,加密,4M晶体HS振荡 const char TABLE ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0X82,0XF8,0X80,0X90}; //定义常数0-9的数据表格 void DELAY(); //delay函数申明 void init(); /
[单片机]
pic 单片机应用问答14篇
1、PIC单片机振荡电路中如何选择晶体 对于一个高可靠性的系统设计,晶体的选择非常重要。尤其设计带有睡眠唤醒(往往用低电压以求低功耗)的系统。这是因为低供电电压使提供给晶体的激励功率减少,造成晶体起振很慢或根本就不能起振。这一现象在上电复位时并不特别明显,原因是上电时电路有足够的扰动很容易建立振荡;在睡眠唤醒时,电路的扰动要比上电时小得多,起振变得很不容易。在振荡回路中晶体既不能过激励(容易振到高次谐波上)也不能欠激励(不容易起振)。晶体的选择至少必须考虑谐振频点、负载电容、激励功、率温度特性、长期稳定性 2、如何判断电路中晶振是否被过分驱动? 电阻RS常用来防止晶振被过分驱动。过分驱动晶振会渐渐损耗减少晶振的接触电镀,这将引
[单片机]
如何利用PIC单片机实现计时秒表功能
//该源程序已在实验板上调试通过,读者可直接引用,并可利用软件编程的灵活性,加以拓展,实现更为复杂的功能。 //此程序实现计时秒表功能,时钟显示范围00.00~99.99秒,分辨度:0.01秒 //定义0.01 秒、0.1 秒、1秒、10秒计时器 #include #include unsigned cha rs 0,s1,s2,s3; unsigned char s[4]; unsigned char k ,data ,sreg; unsigned in ti ; consttable[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0XD8,0x80,0x90}; //不带小数点的显示段
[单片机]
如何利用<font color='red'>PIC</font>单片机实现计时秒表功能
PIC16F883和TLC5615(DA)数模转化实验,呼吸灯
今天上课做了数模转换的实验。感觉很好玩,在这里写下。 器材:PIC16F883控制芯片、TLC5615、LED灯一个、电阻一个(1K)、PICkit2下载器 实验说明,本实验采用I/O模拟方法实现数模转换,转换结果输出到LED引脚。LED呈现呼吸似的缓慢闪烁。 实验电路图: RC3连接SCLK、RC5连接Din、RC2连接CS。 输入DA的数字从0加到1024(DA为10位),再从1024减到0。中间最亮的时候做了一点儿延时。 LED灯接一个电阻到地,另一端接DA的模拟输出引脚。 实验中比较重要的时序图: 根据这个时序图,我周期性的给引脚的电位置1和置0。 代码如下: #include #define uchar
[单片机]
<font color='red'>PIC</font>16F883和TLC5615(DA)数模转化实验,呼吸灯
武林教你学PIC32(六)串口发送数据
1准备工作 串口是必备的,用处非常广,可以把信息打印到屏幕上等等。 首先我们找下串口在开发板上的位置,如下图所示,串口1在JE插槽,串口2在JH插槽处。 由于没有申请串口模块。所以自己焊了一个串口模块,采用的是MAX232电平转换芯片。焊接效果如下图,大家也要自己动手哦,后面几讲要用到串口哦。 2 波特率计算公式 3串口编程 首先配置时钟(见第四讲)系统时钟80M,外设设置10M 然后配置串口波特率: OpenUART2(UART_EN, UART_TX_ENABLE, pbClk/16/DESIRED_BAUDRATE-1);//使能串口,发功能,配置波特率 最后发数据就用: putsUART2( E
[单片机]
武林教你学<font color='red'>PIC</font>32(六)串口发送数据
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved