MikroElektronika PIC Microcontrollers PIC16 Fiche technique

Naviguer en ligne ou télécharger Fiche technique pour PC/postes de travail MikroElektronika PIC Microcontrollers PIC16. mikroElektronika PIC Microcontrollers PIC16 Datasheet Manuel d'utilisatio

  • Télécharger
  • Ajouter à mon manuel
  • Imprimer
  • Page
    / 194
  • Table des matières
  • DEPANNAGE
  • MARQUE LIVRES
  • Noté. / 5. Basé sur avis des utilisateurs
Vue de la page 0
Programming PIC Microcontrollers in BASIC - mikroElektronika
Table of Contents
Preface
Chapter 1: The Basics
Chapter 2: Elements of BASIC Language
Chapter 3: Operators
Chapter 4: Control Structures
Chapter 5: Built-in and Library Routines
Chapter 6: Examples with PIC Integrated Peripherals
Chapter 7: Examples with Displaying Data
Chapter 8: Examples with Memory and Storage Media
Chapter 9: Communications Examples (under construction)
Appendix A: mikroBasic IDE
Preface
In order to simplify things and crash some prejudices, I will allow myself to give you
some advice before reading this book. You should start reading it from the chapter that
interests you the most, in any order you find suitable. As the time goes by, read the
parts you may need at that exact moment. If something starts functioning without you
knowing exactly how, it shouldn’t bother you too much. Anyway, it is better that your
program works than that it doesn’t. Always stick to the practical side of life. Better to
finish the application on time, make it reliable and, of course, get paid for it as well as
possible.
In other words, it doesn’t matter if the exact manner in which the electrons move
http://www.mikroelektronika.co.yu/english/product/books/picbasicbook/00.htm (1 sur 4)05/11/2004 02:02:31
Vue de la page 0
1 2 3 4 5 6 ... 193 194

Résumé du contenu

Page 1 - Table of Contents

Programming PIC Microcontrollers in BASIC - mikroElektronikaTable of Contents● Preface ● Chapter 1: The Basics ● Chapter 2: Elements of BA

Page 2 - EasyPIC 2

Programming PIC Microcontrollers in BASIC - mikroElektronikaend.When the program is completed and saved as .pbas file, it can be compiled by clicking

Page 3 - To Reader’s Knowledge

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.8.6 I2C_Stop – Issues STOP conditionPrototypesub procedure I2C_Stop as byteDescription

Page 4

Programming PIC Microcontrollers in BASIC - mikroElektronikaExample of I2C communication with 24c02 EEPROM5.2.9 LCD LibraryBASIC provides a set of lib

Page 5 - Chapter 1: The Basics

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription Initializes LCD at <Port> with pin settings you specify: parameters <

Page 6

Programming PIC Microcontrollers in BASIC - mikroElektronikaExampleLCD_Chr_CP("k") ' Prints character "k" at current cursor p

Page 7 - 1.1 Why BASIC?

Programming PIC Microcontrollers in BASIC - mikroElektronikaExampleLCD_Out_CP("Some text") ' Prints "Some text" at current cu

Page 8 - 1.3 A word about code writing

Programming PIC Microcontrollers in BASIC - mikroElektronika ' Clears displayLCD_Return_Home ' Returns cursor to home position, ' retur

Page 9

Programming PIC Microcontrollers in BASIC - mikroElektronika ' Turn LCD display offLCD_Shift_Left ' Shift display left without changing disp

Page 10

Programming PIC Microcontrollers in BASIC - mikroElektronikaLCD HW connectionLCD HW connection5.2.10 LCD8 Library (8-bit interface LCD)BASIC provides

Page 11

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub procedure LCD8_Init(dim byref Port_Ctrl as byte, dim byref Port_Data as byte)

Page 12 - 1.6 Running the program

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.10.3 LCD8_Chr – Prints char on LCD at specified row and colPrototypesub procedure LCD8

Page 13 - 1.7 Troubleshooting

Programming PIC Microcontrollers in BASIC - mikroElektronikaHEX file is the one you need to program the microcontroller. Commonly, generated HEX will

Page 14

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub procedure LCD8_Out(dim Row as byte, dim Column as byte, dim byref Text as cha

Page 15

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub procedure LCD8_Cmd(dim Command as byte) Description Sends <Command > to

Page 16

Programming PIC Microcontrollers in BASIC - mikroElektronikaLCD_Cursor_Off ' Turn off cursorLCD_Underline_On ' Underline cursor onLCD_Blink_

Page 17 - 2.1 Identifiers

Programming PIC Microcontrollers in BASIC - mikroElektronikaExampleLCD8_Cmd(LCD_Clear) ' Clears LCD displayLCD HW connectionLCD HW connection5

Page 18 - 2.4 Instructions

Programming PIC Microcontrollers in BASIC - mikroElektronikaconvert bitmap (use menu option Tools > BMP2LCD) to constant array and display it on GL

Page 19 - 2.5 Data Types

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.11.3 GLCD_Put_Ins – Sends instruction to GLCD.Prototype sub procedure GLCD_Put_Ins(dim

Page 20 - 2.7 Variables

Programming PIC Microcontrollers in BASIC - mikroElektronikaExampleGLCD_Put_Data(temperature)5.2.11.5 GLCD_Put_Data2 – Sends data byte to GLCD.Prototy

Page 21 - 2.8 Symbols

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.11.7 GLCD_Data_Read – Reads data from GLCD.Prototype sub function GLCD_Data_Read as by

Page 22 - 2.9 Directives

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription Draws a dot on the GLCD at specified coordinates.ExampleGLCD_Set_Dot(20, 32)5.

Page 23 - 2.11 Labels

Programming PIC Microcontrollers in BASIC - mikroElektronikaExampleGLCD_Line(0, 0, 120, 50)GLCD_Line(0,63, 50, 0)5.2.11.12 GLCD_Invert – Inverts displ

Page 24 - 2.12 Procedures and Functions

Programming PIC Microcontrollers in BASIC - mikroElektronikaNote that the programming software should be used only for the communication with the prog

Page 25

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.11.14 GLCD_Put_Char – Prints <Character> at cursor positionPrototype sub procedu

Page 26 - 2.13 Modules

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub procedure GLCD_Put_Text(dim x_pos as word, dim y_pos as word, dim byref text

Page 27

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription Sets font for GLCD. Parameter <font_index> spans from 1 to 4, and determ

Page 28 - Chapter 3: Operators

Programming PIC Microcontrollers in BASIC - mikroElektronikaNote: Manchester receive routines are blocking calls (Man_Receive_Config, Man_Receive_Init

Page 29

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.12.2 Man_Receive_Config – Initialization with custom pinPrototype sub procedure Man_Re

Page 30 - 3.2 Boolean Operators

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub procedure Man_Send_Init(dim byref Port as byte)Description Procedure works sa

Page 31 - PORTB = 0xFF

Programming PIC Microcontrollers in BASIC - mikroElektronikaExamplefor i = 1 to Length(s1)Man_Send(s1[i]) ' Send charDelay_ms(90)next i5.

Page 32 - Operators)

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.13.2 PWM_Change_Duty – Changes duty ratioPrototype sub procedure PWM_Change_Duty(dim N

Page 33

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.13.4 PWM_Stop – Stops PWMPrototype sub procedure PWM_Stop Description Stops PWM.Exampl

Page 34 - Chapter 4: Control Structures

Programming PIC Microcontrollers in BASIC - mikroElektronikaPWM demonstration5.2.14 RS485 LibraryRS485 is a multipoint communication which allows mult

Page 35

Programming PIC Microcontrollers in BASIC - mikroElektronikareset circuit — MCLR pin is connected to +5V through a 10K resistor. Below is the scheme o

Page 36

Programming PIC Microcontrollers in BASIC - mikroElektronikaMaster and Slave devices interchange packets of information, each of these packets contain

Page 37

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototype sub procedure RS485master_read(dim byref data as byte[5]) Description Master rec

Page 38

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription Routine sends number of bytes (1 < datalen <= 3) from buffer via 485, to

Page 39 - 4.2 Loops

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription Only messages that appropriately address Slaves will be received. As messages

Page 40

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription Sends number of bytes (1 < datalen <= 3) from buffer via 485 to Master.M

Page 41

Programming PIC Microcontrollers in BASIC - mikroElektronikaExample of interfacing PC to PIC MCU via RS485 bushttp://www.mikroelektronika.co.yu/englis

Page 42

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.15 SPI LibrarySPI (Serial Peripheral Interface) module is available with a number of P

Page 43

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub procedure SPI_Init_Advanced(dim Master as byte, dim Data_Sample as byte, dim

Page 44

Programming PIC Microcontrollers in BASIC - mikroElektronika<Low_To_High> determines transmit edge for data:● LOW_2_HIGH : data transmit on

Page 45

Programming PIC Microcontrollers in BASIC - mikroElektronikaExampledim rec as byte...SPI_Read(rec)5.2.15.4 SPI_Write – Sends data via SPIPrototype sub

Page 46 - 5.1 Built-in Routines

Programming PIC Microcontrollers in BASIC - mikroElektronikaand as such is not suitable for the supply of microcontroller. To avoid the pulsating, the

Page 47

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.16.1 USART_Init – Initializes USARTPrototype sub procedure USART_Init(const Baud_Rate)

Page 48

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototype sub function USART_Read as byte Description Receives a byte; if byte is not rece

Page 49

Programming PIC Microcontrollers in BASIC - mikroElektronikaRS232 HW connection5.2.17 One-Wire Library1-wire library provides routines for communicati

Page 50

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.17.1 OW_Reset – Issues 1-wire reset signal for DS1820Prototype sub function OW_Reset(d

Page 51 - 5.2 Library Routines

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub procedure OW_Write(dim byref PORT as byte, dim Pin as byte, dim par as byte)

Page 52

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.18.2 Soft_I2C_Start – Issues START conditionPrototype sub procedure Soft_I2C_Start Des

Page 53

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototype sub function Soft_I2C_Read(dim Ack as byte) as byte Description Receives 1 byte

Page 54

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub procedure Soft_SPI_Config(dim byref Port as byte, const SDI, const SD0, const

Page 55

Programming PIC Microcontrollers in BASIC - mikroElektronikaExampleSoft_SPI_Read(dat)5.2.19.3 Soft_SPI_Write – Sends data via SPIPrototype sub procedu

Page 56 - 5.2.2 ADC Library

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub procedure Soft_UART_Init(dim byref Port as byte, const RX, const TX, const Ba

Page 57

Programming PIC Microcontrollers in BASIC - mikroElektronikamikroElektronika © 1998 - 2004. All rights reserved. If you have any questions, please con

Page 58 - 5.2.3 CAN Library

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototype sub procedure Soft_USART_Write(dim Data as byte) Description Procedure transmits

Page 59

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.21.2 Sound_Play – Plays sound at specified portPrototype sub procedure Sound_Play(dim

Page 60

Programming PIC Microcontrollers in BASIC - mikroElektronikaBASIC provides a trigonometry library for applications which involve angle calculations. T

Page 61

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototype sub function cosE3(dim Angle as word) as integer Description Function takes a wo

Page 62

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub function Button(dim byref PORT as byte, dim Pin as byte, dim Time as byte, di

Page 63

Programming PIC Microcontrollers in BASIC - mikroElektronikaChapter 6: Examples with PIC Integrated Peripherals● Introduction ● 6.1 Interrupt

Page 64

Programming PIC Microcontrollers in BASIC - mikroElektronikaHere is a simple example:In the main loop, program keeps LED_run diode on and LED_int diod

Page 65 - 5.2.3.9 CAN Library Constants

Programming PIC Microcontrollers in BASIC - mikroElektronika end if end if end ifend submain: TRISB = %00111111 ' Pins

Page 66

Programming PIC Microcontrollers in BASIC - mikroElektronikaPotentiometer gives 0V in one terminal position and 5V in the other – since we use 8-bit c

Page 67

Programming PIC Microcontrollers in BASIC - mikroElektronika ' circuit; voltage is measured on RA2 and

Page 68

Programming PIC Microcontrollers in BASIC - mikroElektronikaChapter 2: Elements of BASIC Language● Introduction ● 2.1 Identifiers ● 2.2 Op

Page 69

Programming PIC Microcontrollers in BASIC - mikroElektronika ' in variable AD_Res.PORTD = Lo(AD_Res) ' Displ

Page 70 - 5.2.4 CANSPI Library

Programming PIC Microcontrollers in BASIC - mikroElektronika ' and the result is aligned right.Lcd_Init(PORTB)

Page 71

Programming PIC Microcontrollers in BASIC - mikroElektronikamain:a = 0b = 1OPTION_REG = $84 ' Assign prescaler to TMR0TRISB = 0

Page 72

Programming PIC Microcontrollers in BASIC - mikroElektronikadim cnt as bytesub procedure interrupt cnt = cnt + 1 pir1.0 = 0 ' Clear TMR1IF

Page 73

Programming PIC Microcontrollers in BASIC - mikroElektronikadim j as bytemain:TRISB = 0 ' PORTB is outputPORTB = 0 '

Page 74

Programming PIC Microcontrollers in BASIC - mikroElektronikaOur following program example illustrates use of hardware serial communication. Data recei

Page 75

Programming PIC Microcontrollers in BASIC - mikroElektronikaallows you to monitor transfer and to set all the necessary transfer settings. First of al

Page 76

Programming PIC Microcontrollers in BASIC - mikroElektronikaChapter 7: Examples with Displaying Data● Introduction ● 7.1 LED Diode ● 7.2 S

Page 77

Programming PIC Microcontrollers in BASIC - mikroElektronikaThe positive pole is connected to anode, while ground is connected to cathode. For matter

Page 78

Programming PIC Microcontrollers in BASIC - mikroElektronikaThe following example toggles LEDs of PORTB every second.program LED_Blinkingmain: TRISB

Page 79

Programming PIC Microcontrollers in BASIC - mikroElektronikaprogram LED_Blinkingmain: ' Beginning of program TRISB = 0

Page 80

Programming PIC Microcontrollers in BASIC - mikroElektronikaAs seven-segment digits have better temperature tolerance and visibility than LCD displays

Page 81

Programming PIC Microcontrollers in BASIC - mikroElektronikaUsing the previous scheme, we could display a sequence of nine digits like this:program se

Page 82

Programming PIC Microcontrollers in BASIC - mikroElektronikaits mask must be sent to PORTB. For example, if we need to display "1", segments

Page 83

Programming PIC Microcontrollers in BASIC - mikroElektronika PORTA = 1 ' Turn on 1st 7seg, turn off 2nd v = 1 else PORTB = por

Page 84 - 5.2.5 Compact Flash Library

Programming PIC Microcontrollers in BASIC - mikroElektronikadim por2 as byte' This function returns masks' for common cathode 7-seg displ

Page 85

Programming PIC Microcontrollers in BASIC - mikroElektronikaTRISB = 0PORTB = 0PORTA = 0do for i = 0 to 99 ' Count fro

Page 86

Programming PIC Microcontrollers in BASIC - mikroElektronikaLCD connects to microcontroller via 4-bit or 8-bit bus (4 or 8 lines). R/W signal is on th

Page 87

Programming PIC Microcontrollers in BASIC - mikroElektronikadim Text as char[20]main: TRISB = 0 ' PORTB i

Page 88

Programming PIC Microcontrollers in BASIC - mikroElektronikaBASIC offers a comprehensive library for GLCD – refer to Chapter 5: Built-in and Library R

Page 89

Programming PIC Microcontrollers in BASIC - mikroElektronika while true GLCD_Clear_Screen ' Draw Circles GLCD_Clear_Screen t

Page 90

Programming PIC Microcontrollers in BASIC - mikroElektronika2.2 OperatorsBASIC language possesses set of operators which is used to assign values, com

Page 91

Programming PIC Microcontrollers in BASIC - mikroElektronika7.5 Sound SignalizationSome applications require sound signalization in addition to visual

Page 92

Programming PIC Microcontrollers in BASIC - mikroElektronika Tone1 Tone2 Tone3 Tone3 Tone3 Tone2 Tone1end submain: TRISB = $F0 Sound_Init(POR

Page 93 - Pin diagram of CF memory card

Programming PIC Microcontrollers in BASIC - mikroElektronika wend wendend. PIC, PIC, PICmicro, and MPLAB are registered and protected trade

Page 94

Programming PIC Microcontrollers in BASIC - mikroElektronikaChapter 8: Examples with Memory and Storage Media● Introduction ● 8.1 EEPROM Memor

Page 95

Programming PIC Microcontrollers in BASIC - mikroElektronikaexternal hardware.BASIC has a library for working with internal EEPROM which makes writing

Page 96 - 5.2.7 Flash Memory Library

Programming PIC Microcontrollers in BASIC - mikroElektronikaOccasionally, our needs will exceed the capacity of PIC’s internal EEPROM. When we need to

Page 97 - 5.2.8 I2C Library

Programming PIC Microcontrollers in BASIC - mikroElektronikaOur following program sends data to EEPROM at address 2. To verify transfer, we’ll read da

Page 98

Programming PIC Microcontrollers in BASIC - mikroElektronikaend.8.2 Flash MemoryFlash memory is a form of EEPROM that allows multiple memory locations

Page 99

Programming PIC Microcontrollers in BASIC - mikroElektronika next i Flash_Write($0D00, toWrite) ' write contents of the array to the add

Page 100 - I2C_Stop

Programming PIC Microcontrollers in BASIC - mikroElektronika Flash_Write(i+$0A00, i) ' write the value of i starting from the address

Page 101 - 5.2.9 LCD Library

Programming PIC Microcontrollers in BASIC - mikroElektronika goto Minute ' If variable Time equals 60 jump to label Minuteend ifInstruct

Page 102

Programming PIC Microcontrollers in BASIC - mikroElektronikaroutines are intented for use with CF that have FAT16 and FAT32 file system. Note: routine

Page 103

Programming PIC Microcontrollers in BASIC - mikroElektronikaHere’s an example for using Compact Flash card from BASIC. A set of files is written on CF

Page 104

Programming PIC Microcontrollers in BASIC - mikroElektronika while index < 5 PORTC = 0 Init PORTC = index CF_File_Write_Init(PORTB

Page 105

Programming PIC Microcontrollers in BASIC - mikroElektronika do nop loop until CF_Detect(PORTB) = true ' Wait until CF card is inse

Page 106

Programming PIC Microcontrollers in BASIC - mikroElektronikamikroElektronika © 1998 - 2004. All rights reserved. If you have any questions, please con

Page 107 - LCD HW connection

Programming PIC Microcontrollers in BASIC - mikroElektronikawithin the PN junctions escapes your knowledge. You are not supposed to know the whole his

Page 108

Programming PIC Microcontrollers in BASIC - mikroElektronikaSigned can hold both positive and negative numbers:short -128 .. 127integer

Page 109

Programming PIC Microcontrollers in BASIC - mikroElektronikaIn BASIC, variable needs to be declared before it can be used. Specifying a data type for

Page 110

Programming PIC Microcontrollers in BASIC - mikroElektronikaend ifPORT.1 = 0DELAY1S ...Note that using a symbol in a program technically consumes no

Page 111

Programming PIC Microcontrollers in BASIC - mikroElektronika2.10 CommentsComments are text that is added to the code for purpose of description or cla

Page 112

Programming PIC Microcontrollers in BASIC - mikroElektronikaprogram testmain:' some instructions...' simple endless loop using a labelmy_loo

Page 113 - 5.2.11 Graphic LCD Library

Programming PIC Microcontrollers in BASIC - mikroElektronikacalling the procedure, and (parameterList), and localDeclarations are optional declaration

Page 114

Programming PIC Microcontrollers in BASIC - mikroElektronika locS = par1 * (par2 + 1) Result = locSend subAs functions return values, function calls

Page 115

Programming PIC Microcontrollers in BASIC - mikroElektronikaKeyword include instructs the compiler which file to compile. The example above includes m

Page 116

Programming PIC Microcontrollers in BASIC - mikroElektronikaChapter 3: Operators● Introduction ● 3.1 Arithmetic Operators ● 3.2 Boolean Op

Page 117

Programming PIC Microcontrollers in BASIC - mikroElektronikaOperator Operation Operand types Result type+ addition byte, short, integer, words, longin

Page 118

Programming PIC Microcontrollers in BASIC - mikroElektronikaUSB PIC FlashProgrammer for PIC18 familyPIC Flash is the USB In-System programmer for Flas

Page 119

Programming PIC Microcontrollers in BASIC - mikroElektronikaBASIC also has two unary arithmetic operators:Operator Operation Operand types Result type

Page 120

Programming PIC Microcontrollers in BASIC - mikroElektronikaif (astr > 10) and (astr < 20) thenPORTB = 0xFFend if3.3 Logical (Bitwise) Operators

Page 121

Programming PIC Microcontrollers in BASIC - mikroElektronika(must be positive and less then 255).>> : shift right the operand for a number of bi

Page 122

Programming PIC Microcontrollers in BASIC - mikroElektronikaPIC, PIC, PICmicro, and MPLAB are registered and protected trademarks of the Microchip Tec

Page 123

Programming PIC Microcontrollers in BASIC - mikroElektronikaChapter 4: Control Structures● Introduction ● 4.1 Conditional Statements ● 4.1

Page 124

Programming PIC Microcontrollers in BASIC - mikroElektronikacondition. The BASIC instruction of branching in BASIC language is the IF instruction, wit

Page 125

Programming PIC Microcontrollers in BASIC - mikroElektronika if PORTB.0 = 0 then goto Add end if goto MainAdd: j = j + 1end.More complex form of

Page 126 - 5.2.13 PWM Library

Programming PIC Microcontrollers in BASIC - mikroElektronikaend.4.1.2 SELECT..CASE Statement – Conditional multiple program branchingSyntaxselect case

Page 127

Programming PIC Microcontrollers in BASIC - mikroElektronikaExampleselect case W case 0 B = 1 PORTB = B case 1 A = 1 PORT

Page 128 - 5.2.13.4 PWM_Stop – Stops PWM

Programming PIC Microcontrollers in BASIC - mikroElektronikaExampleprogram testmain: ' some instructions ...goto myLabel ' some instructions

Page 129 - PWM demonstration

Programming PIC Microcontrollers in BASIC - mikroElektronikaPIC, PIC, PICmicro, and MPLAB are registered and protected trademarks of the Microchip Tec

Page 130

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription For statement requires you to specify the number of iterations you want the lo

Page 131

Programming PIC Microcontrollers in BASIC - mikroElektronikaExampleI = 0do I = I + 1 ' execute these 2 statements PORTB = I '

Page 132

Programming PIC Microcontrollers in BASIC - mikroElektronikawend4.3 ASM Statement – Embeds assembly instruction blockSyntaxasm statementListend asmDe

Page 133

Programming PIC Microcontrollers in BASIC - mikroElektronikaChapter 5: Built-in and Library Routines● Introduction ● 5.1 Built-in Routines ●

Page 134 - RS485Slave_Write(dat, 1)

Programming PIC Microcontrollers in BASIC - mikroElektronika● 5.2 Library Routines ● 5.2.1 Numeric Formatting ● 5.2.1.1 ByteToStr ● 5.

Page 135

Programming PIC Microcontrollers in BASIC - mikroElektronika● 5.2.4 CANSPI Library ● 5.2.4.1 CANSPISetOperationMode ● 5.2.4.2 CANSPIGetOpe

Page 136 - 5.2.15 SPI Library

Programming PIC Microcontrollers in BASIC - mikroElektronikaIntroductionBASIC was designed with focus on simplicity of use. Great number of built-in a

Page 137

Programming PIC Microcontrollers in BASIC - mikroElektronika5.1.2 ClearBit – Clears the specified bitPrototypesub procedure ClearBit(dim byref Reg as

Page 138

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub function Lo(dim Par as byte..longint) as byteDescription Returns byte 0 of &l

Page 139 - 5.2.16 USART Library

Programming PIC Microcontrollers in BASIC - mikroElektronikaExampleHigher(Aaaa) ' returns byte next to the highest byte of variable Aaaa5.1.7 Hi

Page 140

Programming PIC Microcontrollers in BASIC - mikroElektronikaChapter 1: The Basics● Introduction ● 1.1 Why BASIC? ● 1.2 Choosing the right

Page 141

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub procedure Delay_ms(const Count as word)Description Routine creates a software

Page 142 - RS232 HW connection

Programming PIC Microcontrollers in BASIC - mikroElektronikaExampleDec(Aaaa) ' decrements variable Aaaa by 15.1.12 Length – Returns length of st

Page 143

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.1.1 ByteToStr – Converts byte to stringPrototypesub procedure ByteToStr(dim input as b

Page 144 - 5.2.18 Software I2C

Programming PIC Microcontrollers in BASIC - mikroElektronikaExampleWordToStr(Counter, Message) ' Copies value of word Counter into string Message

Page 145

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription Parameter <input> represents numerical value of integer type that should

Page 146 - 5.2.19 Software SPI Library

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub procedure Dec2Bcd(dim dec_num as byte) as byteDescription Function converts 8

Page 147 - ● Clock idle state low

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.1.8 Bcd2Dec – Converts 16-bit BCD value to decimalPrototypesub procedure Dec2Bcd16(dim

Page 148 - 5.2.20 Software UART Library

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription Routine initializes ADC module to work with RC clock. Clock determines the tim

Page 149

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.3 CAN LibraryThe Controller Area Network module (CAN) is serial interface, used for co

Page 150 - 5.2.21 Sound Library

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub function CANGetOperationMode as byteDescription The function returns the curr

Page 151 - 5.2.22 Trigonometry Library

Programming PIC Microcontrollers in BASIC - mikroElektronikaattention particularly to programming of microcontrollers.Program consists of a sequence o

Page 152

Programming PIC Microcontrollers in BASIC - mikroElektronikaCAN bit rate is set. All masks registers are set to '0' to allow all messages.Fi

Page 153 - 5.2.23 Utilities

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub procedure CANSetBaudRate(dim SJW as byte, dim BRP as byte, dim PHSEG1 as byte

Page 154

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub procedure CANSetMask(CAN_MASK as byte, val as longint, dim CAN_CONFIG_FLAGS a

Page 155 - 6.1 Interrupt Mechanism

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription The procedure sets the CAN message filter. CAN must be in Configuration mode.

Page 156

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription If at least one empty transmit buffer is found, given message is queued for th

Page 157 - 6.2 Internal AD Converter

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription If at least one full receive buffer is found, the function extracts and return

Page 158

Programming PIC Microcontrollers in BASIC - mikroElektronikaconst CAN_MODE_LOOP = $40const CAN_MODE_LISTEN = $60const CAN_MODE_CONFIG = $80CAN_TX_MS

Page 159

Programming PIC Microcontrollers in BASIC - mikroElektronikaThese constant values define flags related to reception of a CAN message. There could be m

Page 160

Programming PIC Microcontrollers in BASIC - mikroElektronikaThese constant values define mask codes. Routine CANSetMask()requires this code as one of

Page 161 - 6.3 TMR0 Timer

Programming PIC Microcontrollers in BASIC - mikroElektronikaconst CAN_CONFIG_PHSEG2_PRG_ON = $FF ' XXXXXXX1const CAN_CONFIG_PHSEG2_PRG_OFF = $F

Page 162 - 6.4 TMR1 Timer

Programming PIC Microcontrollers in BASIC - mikroElektronika1.1 Why BASIC?Originally devised as an easy-to-use tool, BASIC became widespread on home m

Page 163 - 6.5 PWM Module

Programming PIC Microcontrollers in BASIC - mikroElektronikaExample of interfacing CAN transceiver with MCU and bus5.2.4 CANSPI LibraryThe Controller

Page 164

Programming PIC Microcontrollers in BASIC - mikroElektronikamodule. More details about CAN can be found in appropriate literature and on mikroElektron

Page 165

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription The function returns the current operation mode of CAN.ExampleCANGetOperationM

Page 166

Programming PIC Microcontrollers in BASIC - mikroElektronikaIf (CAN_CONFIG_FLAGS and CAN_CONFIG_VALID_XTD_MSG) <> 0 Set all filters to XTD_MS

Page 167 - 7.1 LED Diode

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub procedure CANSPISetBaudRate(dim SJW as byte, dim BRP as byte, dim PHSEG1 as b

Page 168

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub procedure CANSPISetMask(CAN_MASK as byte, val as longint, dim CAN_CONFIG_FLAG

Page 169 - 7.2 Seven-Segment Displays

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription The procedure sets the CAN message filter. CAN must be in Configuration mode.

Page 170

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription If at least one empty transmit buffer is found, given message is queued for th

Page 171

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription If at least one full receive buffer is found, the function extracts and return

Page 172

Programming PIC Microcontrollers in BASIC - mikroElektronikaconst CAN_MODE_LOOP = $40const CAN_MODE_LISTEN = $60const CAN_MODE_CONFIG = $80CAN_TX_MS

Page 173

Programming PIC Microcontrollers in BASIC - mikroElektronika1.2 Choosing the right PIC for the taskCurrently, the best choice for application developm

Page 174

Programming PIC Microcontrollers in BASIC - mikroElektronikaThese constant values define flags related to reception of a CAN message. There could be m

Page 175

Programming PIC Microcontrollers in BASIC - mikroElektronikaThese constant values define mask codes. Routine CANSetMask()requires this code as one of

Page 176

Programming PIC Microcontrollers in BASIC - mikroElektronikaconst CAN_CONFIG_PHSEG2_PRG_ON = $FF ' XXXXXXX1const CAN_CONFIG_PHSEG2_PRG_OFF = $F

Page 177

Programming PIC Microcontrollers in BASIC - mikroElektronikaExample of interfacing CAN transceiver MCP2551, and MCP2510 with MCU and bushttp://www.mik

Page 178

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.5 Compact Flash LibraryCompact Flash Library provides routines for accessing data on C

Page 179

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub procedure CF_INIT_PORT(dim byref CtrlPort as byte, dim byref DataPort as byte

Page 180 - 7.5 Sound Signalization

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub procedure CF_WRITE_INIT(dim byref CtrlPort as byte, dim byref DataPort as byt

Page 181

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription The procedure writes 1 byte to Compact Flash. The procedure has effect only if

Page 182 - wend

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription The procedure writes 1 word to Compact Flash. The procedure has effect only if

Page 183 - 8.1 EEPROM Memory

Programming PIC Microcontrollers in BASIC - mikroElektronikaExampleCF_Read_Init(PORTB, PORTD, 590, 1) ' Initialize write at sector address

Page 184 - 8.1.2 Serial EEPROM

Programming PIC Microcontrollers in BASIC - mikroElektronikamikroBasic IDE includes highly adaptable Code Editor, fashioned to satisfy needs of both n

Page 185

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub function CF_READ_WORD(dim byref CtrlPort as byte, dim byref DataPort as byte)

Page 186

Programming PIC Microcontrollers in BASIC - mikroElektronikaExampleCF_File_Write_Init(PORTB, PORTD)5.2.5.10 CF_File_Write_Byte – Adds one byte to file

Page 187 - 8.2 Flash Memory

Programming PIC Microcontrollers in BASIC - mikroElektronikaPrototypesub procedure CF_File_Write_Complete(dim byref CtrlPort as byte, dim byref DataPo

Page 188

Programming PIC Microcontrollers in BASIC - mikroElektronikaPin diagram of CF memory card5.2.6 EEPROM LibraryEEPROM data memory is available with a nu

Page 189 - 8.3 Compact Flash

Programming PIC Microcontrollers in BASIC - mikroElektronikaprovide you comfortable work with EEPROM.Notes:Be aware that all interrupts will be disabl

Page 190

Programming PIC Microcontrollers in BASIC - mikroElektronikaExampleTRISB = 0Delay_ms(30)for i = 0 to 20 PORTB = EEPROM_Read(i) for j = 0 to 200 D

Page 191

Programming PIC Microcontrollers in BASIC - mikroElektronikaExample for i = 0 to 20 EEPROM_Write(i, i + 6) next i5.2.7 Flash Memory LibraryThis lib

Page 192

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.7.2 Flash_Write – Writes data to microcontroller Flash memoryPrototypesub procedure Fl

Page 193

Programming PIC Microcontrollers in BASIC - mikroElektronika5.2.8.1 I2C_Init – Initializes I2C modulePrototypesub procedure I2C_Init(const Clock as lo

Page 194

Programming PIC Microcontrollers in BASIC - mikroElektronikaDescription Performs repeated start condition.ExampleI2C_Repeated_Start5.2.8.4 I2C_Rd – Re

Commentaires sur ces manuels

Pas de commentaire