Ad and Disad of PIC.docx
-
Upload
hoang-huynh -
Category
Documents
-
view
214 -
download
0
Transcript of Ad and Disad of PIC.docx
-
8/11/2019 Ad and Disad of PIC.docx
1/2
PIC Microcontroller Architecture:
Advantages of PIC Microcontroller:
They are reliable and malfunctioning of PIC percentage is very less. And performance of the PIC is very fast
because of using RISC architecture.
Power conception is also very less when compared to other micro controllers. When we see in the programmer
point of view interfacing is very easy, also we can connect analog devices directly with out any extra circuitry
and use them. Programming is also very easy when compared to other microcontrollers.
Disadvantages of PIC Microcontroller:
The length of the program will be big because of using RISC (35 instructions).
Program memory is not accessible and only one single accumulator is present.
Ngun :http://www.electronicshub.org/pic-microcontroller-architecture/
Theo wiki :
Advantages[edit]
Small instruction set to learn
RISCarchitecture
Built in oscillator with selectable speeds
http://www.electronicshub.org/pic-microcontroller-architecture/http://www.electronicshub.org/pic-microcontroller-architecture/http://www.electronicshub.org/pic-microcontroller-architecture/http://en.wikipedia.org/w/index.php?title=PIC_microcontroller&action=edit§ion=9http://en.wikipedia.org/w/index.php?title=PIC_microcontroller&action=edit§ion=9http://en.wikipedia.org/w/index.php?title=PIC_microcontroller&action=edit§ion=9http://en.wikipedia.org/wiki/Reduced_instruction_set_computerhttp://en.wikipedia.org/wiki/Reduced_instruction_set_computerhttp://www.electronicshub.org/wp-content/uploads/2013/09/PIC-Microcontroller-Architecture.pnghttp://en.wikipedia.org/wiki/Reduced_instruction_set_computerhttp://en.wikipedia.org/w/index.php?title=PIC_microcontroller&action=edit§ion=9http://www.electronicshub.org/pic-microcontroller-architecture/ -
8/11/2019 Ad and Disad of PIC.docx
2/2
Easy entry level, in-circuit programming plus in-circuit debuggingPICKitunits available for less than
$50
Inexpensive microcontrollers
Wide range of interfaces includingIC,SPI,USB,USART,A/D,programmable
comparators,PWM,LIN,CAN,PSP,and Ethernet
[9]
Availability of processors inDILpackage make them easy to handle for hobby use.
Limitations[edit]
Oneaccumulator
Register-bank switchingis required to access the entire RAM of many devices
Operations and registers are notorthogonal;some instructions can address RAM
and/orimmediateconstants, while others can use the accumulator only.
The following stack limitations have been addressed in the PIC18series, but still apply to earlier cores:
The hardware call stack is not addressable, so preemptivetask switchingcannot be implemented Software-implementedstacksare not efficient, so it is difficult to generatereentrantcode and
supportlocal variables
With paged program memory, there are two page sizes to worry about: one for CALL and GOTO and
another for computed GOTO (typically used for table lookups). For example, on PIC16, CALL and
GOTO have 11 bits of addressing, so the page size is 2048 instruction words. For computed GOTOs,
where you add to PCL, the page size is 256 instruction words. In both cases, the upper address bits are
provided by the PCLATH register. This register must be changed every time control transfers between
pages. PCLATH must also be preserved by any interrupt handler.[10]
Ngun :http://en.wikipedia.org/wiki/PIC_microcontroller
http://en.wikipedia.org/wiki/PICKithttp://en.wikipedia.org/wiki/PICKithttp://en.wikipedia.org/wiki/PICKithttp://en.wikipedia.org/wiki/I%C2%B2Chttp://en.wikipedia.org/wiki/I%C2%B2Chttp://en.wikipedia.org/wiki/I%C2%B2Chttp://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bushttp://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bushttp://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bushttp://en.wikipedia.org/wiki/USBhttp://en.wikipedia.org/wiki/USBhttp://en.wikipedia.org/wiki/USBhttp://en.wikipedia.org/wiki/Universal_asynchronous_receiver/transmitterhttp://en.wikipedia.org/wiki/Universal_asynchronous_receiver/transmitterhttp://en.wikipedia.org/wiki/Universal_asynchronous_receiver/transmitterhttp://en.wikipedia.org/wiki/Analog-to-digital_converterhttp://en.wikipedia.org/wiki/Analog-to-digital_converterhttp://en.wikipedia.org/wiki/Analog-to-digital_converterhttp://en.wikipedia.org/wiki/Pulse-width_modulationhttp://en.wikipedia.org/wiki/Pulse-width_modulationhttp://en.wikipedia.org/wiki/Pulse-width_modulationhttp://en.wikipedia.org/wiki/Local_Interconnect_Networkhttp://en.wikipedia.org/wiki/Local_Interconnect_Networkhttp://en.wikipedia.org/wiki/Local_Interconnect_Networkhttp://en.wikipedia.org/wiki/Controller_area_networkhttp://en.wikipedia.org/wiki/Controller_area_networkhttp://en.wikipedia.org/wiki/Controller_area_networkhttp://en.wikipedia.org/wiki/Parallel_slave_porthttp://en.wikipedia.org/wiki/Parallel_slave_porthttp://en.wikipedia.org/wiki/Parallel_slave_porthttp://en.wikipedia.org/wiki/PIC_microcontroller#cite_note-9http://en.wikipedia.org/wiki/PIC_microcontroller#cite_note-9http://en.wikipedia.org/wiki/PIC_microcontroller#cite_note-9http://en.wikipedia.org/wiki/Dual_in-line_packagehttp://en.wikipedia.org/wiki/Dual_in-line_packagehttp://en.wikipedia.org/wiki/Dual_in-line_packagehttp://en.wikipedia.org/w/index.php?title=PIC_microcontroller&action=edit§ion=10http://en.wikipedia.org/w/index.php?title=PIC_microcontroller&action=edit§ion=10http://en.wikipedia.org/w/index.php?title=PIC_microcontroller&action=edit§ion=10http://en.wikipedia.org/wiki/Accumulator_(computing)http://en.wikipedia.org/wiki/Accumulator_(computing)http://en.wikipedia.org/wiki/Accumulator_(computing)http://en.wikipedia.org/wiki/Bank_switchinghttp://en.wikipedia.org/wiki/Bank_switchinghttp://en.wikipedia.org/wiki/Bank_switchinghttp://en.wikipedia.org/wiki/Orthogonal#Computer_sciencehttp://en.wikipedia.org/wiki/Orthogonal#Computer_sciencehttp://en.wikipedia.org/wiki/Orthogonal#Computer_sciencehttp://en.wikipedia.org/wiki/Constant_(computer_science)http://en.wikipedia.org/wiki/Constant_(computer_science)http://en.wikipedia.org/wiki/Constant_(computer_science)http://en.wikipedia.org/wiki/Computer_multitaskinghttp://en.wikipedia.org/wiki/Computer_multitaskinghttp://en.wikipedia.org/wiki/Computer_multitaskinghttp://en.wikipedia.org/wiki/Stack_(data_structure)http://en.wikipedia.org/wiki/Stack_(data_structure)http://en.wikipedia.org/wiki/Stack_(data_structure)http://en.wikipedia.org/wiki/Reentrant_(subroutine)http://en.wikipedia.org/wiki/Reentrant_(subroutine)http://en.wikipedia.org/wiki/Reentrant_(subroutine)http://en.wikipedia.org/wiki/Local_variablehttp://en.wikipedia.org/wiki/Local_variablehttp://en.wikipedia.org/wiki/Local_variablehttp://en.wikipedia.org/wiki/PIC_microcontrollerhttp://en.wikipedia.org/wiki/PIC_microcontrollerhttp://en.wikipedia.org/wiki/PIC_microcontrollerhttp://en.wikipedia.org/wiki/PIC_microcontrollerhttp://en.wikipedia.org/wiki/Local_variablehttp://en.wikipedia.org/wiki/Reentrant_(subroutine)http://en.wikipedia.org/wiki/Stack_(data_structure)http://en.wikipedia.org/wiki/Computer_multitaskinghttp://en.wikipedia.org/wiki/Constant_(computer_science)http://en.wikipedia.org/wiki/Orthogonal#Computer_sciencehttp://en.wikipedia.org/wiki/Bank_switchinghttp://en.wikipedia.org/wiki/Accumulator_(computing)http://en.wikipedia.org/w/index.php?title=PIC_microcontroller&action=edit§ion=10http://en.wikipedia.org/wiki/Dual_in-line_packagehttp://en.wikipedia.org/wiki/PIC_microcontroller#cite_note-9http://en.wikipedia.org/wiki/Parallel_slave_porthttp://en.wikipedia.org/wiki/Controller_area_networkhttp://en.wikipedia.org/wiki/Local_Interconnect_Networkhttp://en.wikipedia.org/wiki/Pulse-width_modulationhttp://en.wikipedia.org/wiki/Analog-to-digital_converterhttp://en.wikipedia.org/wiki/Universal_asynchronous_receiver/transmitterhttp://en.wikipedia.org/wiki/USBhttp://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bushttp://en.wikipedia.org/wiki/I%C2%B2Chttp://en.wikipedia.org/wiki/PICKit