PIC -3 - PowerPoint PPT Presentation

1 / 29
About This Presentation
Title:

PIC -3

Description:

LCD, Serial, SPI, ADC, DIO, Steppers, Servos, DAC, Interrupts 'Real Time OS' Bomb' detectors ... Music Playing. Floating point ...Countless. HiTech site. CCS ... – PowerPoint PPT presentation

Number of Views:140
Avg rating:3.0/5.0
Slides: 30
Provided by: chrisba7
Category:
Tags: pic

less

Transcript and Presenter's Notes

Title: PIC -3


1
PIC -3
2
This Class Introduction to Autonomous Microboard
  • Next class - hosted mode.
  • This class is overview of autonomous mode.
  • Most projects expected to use some form of
    autonomous mode.

3
What is Autonomous Mode?
  • Assembly/Machine or C programming.
  • C2C (shareware) CCS
  • Simple instructions.
  • Full capability of PIC.

4
When to be Autonomous
  • Response in usec.
  • Need full capabilities of PIC.
  • Not too computing or data intensive.
  • No interface to host needed.
  • Low duty cycle (e.g. data logging)

5
The 87x PIC
  • Data sheet on website
  • RISC (35 inst.)
  • Fast Cheap
  • EEPROM, Flash, RAM
  • Programmable
  • In-Circuit Pgming

6
873 - Versatile
  • Sleep mode
  • Power management
  • (uA to mA !)
  • Timers
  • Interrupts
  • UART
  • Parallel port
  • DIO (A,B,C)
  • PWM output
  • PWM capture
  • 10 bit ADC
  • SPI
  • I2C

7
Instruction Set
  • Simple
  • Portable skill
  • Program from Sheet
  • (Fortran)
  • Bit intensive
  • 4k 14 bit words
  • 1 us/instruction

8
Bit Banging
  • Complete data sheet.
  • Many application notes, books.
  • Can code many operations yourself.
  • Many placed in Modules
  • UART
  • SPI
  • I2C
  • USB (devel.)

9
Assembler Programming
  • Perhaps alien - but powerful and fast.
  • From Section 9.1 in manual

10
Modules and Debug
  • Many modules on PIC
  • Much setup many modes
  • Most common modules covered by subroutines in
    Debug (e.g. hosted mode)

11
Hacking Debug
  • Command Sub.
  • Low-Level Sub.
  • Definitions
  • Parser

12
Calling a Debug Subroutine
  • Section 11.1
  • Banks for Data
  • Pages for Program
  • Simple!

13
Programming - MPLAB
  • Section 9
  • Assembler
  • Simulator
  • Programmer
  • Freeware
  • (Also GNU, C2C etc)

14
Simulating - MPLAB
  • Section 10
  • Step through program
  • Watch memory/ports change.
  • Perfect for tracking bugs.
  • Limitations Serial/ADC

15
Free C Compilers C2C
  • C2C
  • On web
  • LCD etc. interface routines available
  • Easy to adapt and develop.
  • Allows inline ASM.
  • No floats
  • Not ANSI
  • Careful with different devices such as LCDs
  • Will need to read data sheets.
  • Configurable to most PICs
  • No examples yet

16
Free C Compilers Optama
  • Optama
  • Demo available on web.
  • LCD etc. interface routines available?
  • Easy to adapt and develop.
  • Allows inline ASM?
  • No floats?
  • Not ANSI?
  • Careful with different devices such as LCDs
  • Will need to read data sheets.
  • Configurable to most PICs
  • USB example

17
C Compilers HiTech
  • HiTech Demo
  • 21day from web
  • LCD etc. interface routines available.
  • Easy to adapt and develop.
  • Allows inline ASM.
  • Full floating point!
  • ANSI
  • Careful with different devices such as LCDs
  • Will need to read data sheets.
  • Configurable to all PICs?
  • No examples yet
  • Reinstall system after 21d!

18
C Compilers CCS
  • CCS
  • Purchased (145)
  • LCD etc. interface routines available.
  • Easy to adapt and develop.
  • Allows inline ASM.
  • Full floating point!
  • ANSI
  • Careful with different devices such as LCDs
  • Will need to read data sheets.
  • Configurable to all PICs
  • Some examples in 401
  • Now in my lab

19
CCS in My Lab
  • Souped up Microboard
  • 20 MHz 877 PIC
  • C far faster easier
  • LCD, Serial, SPI, ADC, DIO, Steppers, Servos,
    DAC, Interrupts
  • Real Time OS
  • Bomb detectors
  • Ion thrusters
  • Robotic fingers
  • Temperature controllers
  • DNA detectors
  • Soon
  • Mutation detectors
  • Launch

20
CCS Coding LCD Floats
  • device PIC16F877 16 ICDTRUE
  • include ltdefs_877.hgt
  • include ltlcd_out.hgt
  • void main(void) ... lcd_init() q 0
  • while(1) ...
  • lcd_clr_line(1) // advance to line 1
  • printf(lcd_char, " Hello World ")
  • T_F 76.6 0.015 ((float) (q))
  • lcd_clr_line(2)
  • printf(lcd_char, "T_F f", T_F)
  • Not Bad Eh?

21
Other Examples
  • Telephone Dialing
  • Temperature
  • Pressure
  • SPI devices
  • I2C devices
  • EEPROM
  • Control
  • Music Playing
  • Floating point
  • Countless
  • HiTech site
  • CCS site
  • Internet as a whole
  • C far more portable

22
CCS in EE401
  • Windows version
  • Integrated into MPLAB!
  • Perfect for simulating, debugging and burning
  • Limited access?
  • Linux version
  • Remote compiles!
  • Perfect for debugging from home or?
  • Unlimited access?

23
Other Thoughts
  • Many methods for using bootloaders with asm or C!
    (e.g. HiTech site)
  • Power management (e.g. data logging)
  • USB C code now on web
  • Some new RF units (simple and readily available
    components)

24
By End of Week
  • Sketch Proposal
  • (Friday September 20, 5pm)
  • Parts.
  • Schematic.
  • Objectives.
  • Description/Background
  • Attribute.
  • See website checklist!

25
Next 2 Weeks
  • Prototyping on SK-10s
  • Return of Proposals
  • Complete Schematic (EAGLE)
  • Programming/Interfacing Signoff
  • Easy if keep underway.

26
Guest Lectures Later
  • Jerry Kowalyk
  • Library Electronic searches
  • Background required in any project report.
  • Loren Wyard-Scott
  • PC Layout.
  • Use of EAGLE.
  • Instruction on getting a good PCB layout.
  • Rules for PCB submission.

27
Lectures
  • Loren Wyard-Scott
  • Simulation
  • Tracking bugs
  • Methods
  • Limitations
  • Examples

28
Schedule
  • Do not underestimate times for
  • - design
  • - parts
  • - fixes
  • - software
  • - integration
  • - background
  • - creativity
  • Easy schedule if regular.
  • Dont let due dates loom!

29
The Labs
  • Office hours are generally in lab.
  • Generally in each lab day.
  • Approach in lab or after class.
  • Arrange time if need be.
Write a Comment
User Comments (0)
About PowerShow.com