Electronic Projects, forums and more.

Go Back   Electronic Circuits Projects Diagrams Free > Electronics Categories > Micro Controllers


Micro Controllers Discuss all aspects of micro controllers - building them, coding them, etc. All controllers are welcome - PIC, BASIC, Z8 Encore!, etc.

Reply
 
Tools
Old 19th March 2009, 07:10 PM   #1
Default Who Can Program This ??

Hi All ;

I Want To Program This Circuit And I Want To Use Pic16f877 Not Pic 16f84 So ...

See The Schematic ...



And Reply Me Please

Thanks
Attached Thumbnails
Who Can Program This ??-ups.gif  
khatib is offline  
Old 19th March 2009, 07:27 PM   #2
Default

What do want help with?
__________________
Bill
Smart Kits build Smart People

http://www.blueroomelectronics.com/
blueroomelectronics is offline  
Old 19th March 2009, 07:30 PM   #3
Default

battary monitor .. how to do that , and if you see the schematic you see that only analog is battary
khatib is offline  
Old 19th March 2009, 07:32 PM   #4
Default

Do you have the source code for the 16F84?
__________________
Bill
Smart Kits build Smart People

http://www.blueroomelectronics.com/
blueroomelectronics is offline  
Old 19th March 2009, 07:43 PM   #5
Default

#;----------------------------------------------------
; UPS.ASM
; Program for Blaster Control Board (INTROMARIN-C).
;----------------------------------------------------

LIST p=16F84 ; PIC16F84 is the target processor

#include p16f84.inc

;#define PROC16C71

; variables definition

; ًهمèًٌٍû
T EQU 10H ; ٌ÷هٍ÷èê ïهًèîنà ىàêٌ=200
LEN EQU 11H ; نëèٍ. àêٍèâي. ٌîٌٍîےيèے ىàêٌ=100
PP EQU 12H ; ٌ÷هٍ÷èê ïîëَïهًèîنà
BAT EQU 13H ; ïًèçيàê ًàلîٍû îٍ لàٍàًهé
FRONT EQU 14H ; ïًèçيàê ïهًهنيهمî ôًîيٍà ٌèيًُîيèçàِèè
SIN_OK EQU 15H ; ïًèçيàê ٌèيًُîيèçàِèè
SHORT EQU 16H ; êًàٍêîâًهىهييûé لَôهً
FLAG_F EQU 17H ; ôëàم ôًîيٍà ٌèيًُîيèçàِèè
PWcnt EQU 18H ; ٌ÷هٍ÷èê نëèٍ. ٌهٍهâîمî ïèٍàيèے
SINcnt EQU 19H ; ٌ÷هٍ÷èê ïهًèîنà ٌهٍهâîمî ïèٍàيèے
t EQU 20H ; âيًٍَهييèé ٌ÷هٍ÷èê ïهًèîنà
BATime EQU 21H ;
time EQU 22H ; ٌ÷هٍ÷èê 20ىٌ ىàêٌ=5.12ٌهê
zumm EQU 23H ; ïًèçيàê âêë‏÷هيèے çَىىهًà

; êîيٌٍàيٍû
period EQU .165 ; ïهًèîن
len EQU .80

; لèٍû ïîًٍà A
OS EQU 2 ; âُîن خر ïًهîلًàçîâàٍهëے
LOWBAT EQU 3 ; âُîن LOW BATTERY
; EQU 4 ; âُîن


; لèٍû ïîًٍà B
SINH EQU 0 ; âُîن ٌèيًُîيèçàِèè
PWGOOD EQU 1 ; âُîن POWER_GOOD
; EQU 2 ; âûُîن
RELAY EQU 3 ; âûُîن َïًàâëهيèه ًهëه
BASE0 EQU 4 ; âûُîن لàçà ًٍàيçèٌٍîًà
BASE1 EQU 5 ; âûُîن لàçà ًٍàيçèٌٍîًà
; EQU 6 ; âûُîن
ZUMM EQU 7 ; âûُîن çَىىهً



GOTO Start
;------------------------------------------;
; MAIN ;
;------------------------------------------;
ORG 200

; حà÷àëüيûه ٌٍَàيîâêè
Start: ; حà÷àëüيûه ٌٍَàيîâêè

; Initialize PORTA by
BCF STATUS, RP0
CLRF PORTA
BSF STATUS, RP0
MOVLW 0x1f ; Set RA0-RA4 as inputs
MOVWF TRISA
#ifdef PROC16C71
MOVLW 0x00 ; Set RA0-RA4 as analog
MOVWF ADCON1
#endif

; Initialize PORTB by
BCF STATUS, RP0
CLRF PORTB
BSF STATUS, RP0
MOVLW 0x03 ; Set RB0,Rb1 as inputs, all other as output
MOVWF TRISB

; TIMER INTERRUPT ENABLE
BSF STATUS, RP0
MOVLW 0xA0
MOVWF INTCON

; SET_TIMER
BSF STATUS, RP0 ; çàïًîمًàىىèًîâàٍü ٍàéىهً
; NEW !!!! WDT
movlw 0x58
movwf OPTION_REG ; èٌٍî÷يèê âيًٍَهييèé,
; ïîنêë‏÷èٍü نهëèٍهëü ê WDT,
; êî‎ôôèِèهيٍ نهëèٍهëے 1
; NEW !!! WDT
BCF STATUS, RP0
BCF INTCON, T0IF ; ٌلًîٌèٍü ôëàم
;MOVF period ;
MOVLW period
MOVWF TMR0

; PRESET REGISTERS
BCF STATUS, RP0
MOVLW .199
MOVWF T
MOVLW .80
MOVWF LEN
BSF BAT, 0
CLRF FRONT
CLRF BATime
CLRF time
CLRF zumm


; رàىîٍهٌٍèًîâàيèه
;BCF PORTB, 3
;CALL ZUMM
;CALL ZUMM
;CALL ZUMM
;BSF PORTB, 3

; خئبؤہحبإ دذإذغآہحبك
GOTO $



;------------------------------------------;
; خلًàلîٍêà ïًهًûâàيèé ;
;------------------------------------------;
ORG 4
;__interrupt{
;------------------------------__SET_TIMER ------------------
BCF STATUS, RP0
btfss TMR0, 0 ; êîًًهêِèے
goto $+1
BCF INTCON, T0IF ; ٌلًîٌèٍü ôëàم
MOVLW period ; êàê êîيٌٍàيٍَ
MOVWF TMR0
;-------------------------------------------------------------
INCF T, 1 ; حہذہظبآہحبإ ر×إز×بتہ دإذبخؤہ
MOVF T, 0
SUBLW .199
BTFSS STATUS, C
CLRF T ; رءذخر ر×إز×بتہ دإذبخؤہ
;-------------------------------------------------------------
INCF t, 1
MOVF T, 1 ; رءذخر آحسزذإححإأخ ر×. دإذبخؤہ
BTFSC STATUS, Z
CLRF t
;-------------------------------------------------------------
clrwdt ; !!!! NEW WDT !!!!
;-------------------------------------------------------------
;__if(t==0)||(t==99) { PP++
MOVF t, 0
SUBLW .0
BTFSS STATUS, Z
GOTO INT1
CLRF PP ; رءذخر دذباحہتہ دخثسدإذبخؤہ
MOVLW len ; دإذإسرزہحخآتہ LEN
MOVWF LEN
GOTO INT2
INT1: MOVF t, 0
SUBLW .99
BTFSS STATUS, Z
GOTO INT2
BSF PP, 0 ; سرزہحخآتہ دذباحہتہ دخثسدإذبخؤہ
MOVLW len ; دإذإسرزہحخآتہ LEN
MOVWF LEN
INT2: MOVF LEN, 1 ; ؤإتذإجإحز LEN
BTFSS STATUS, Z
DECF LEN, 1
;__}

;******************* دذبحكزبإ ذإطإحبة ************************
;-------------------------- دإذإصخؤ حہ ءہزہذإب ---------------
BTFSC PORTB, PWGOOD
GOTO POWER
BSF BAT, 0
CLRF PWcnt
CLRF SIN_OK
POWER:
;-------------------------- دإذإصخؤ حہ رإزـ ------------------
BTFSS PORTB, PWGOOD
GOTO DESIGN
BTFSS PWcnt, 7
GOTO DESIGN
BTFSS SIN_OK, 0
GOTO DESIGN
CLRF BAT
DESIGN:
;************************************************* ************

;-------------------------- آتثق×بزـ ذإثإ --------------------
BTFSC BAT, 0
BCF PORTB, RELAY
BTFSS BAT, 0
BSF PORTB, RELAY
;-------------------------- سدذہآثإحبإ زذہحابرزخذہجب -------
;__if(BAT==1){
BTFSS BAT, 0
GOTO INT4
;__if(LEN!=0){
MOVF LEN, 1
BTFSC STATUS, Z
GOTO INT4
;__if(PP==0){
BTFSC PP, 0
GOTO INT3
BSF PORTB, BASE0
BCF PORTB, BASE1
GOTO INT5
INT3: BCF PORTB, BASE0
BSF PORTB, BASE1
GOTO INT5
;__}
;__}
;__else{}
INT4: BCF PORTB, BASE0
BCF PORTB, BASE1
INT5:
;__}
;------------------------- ربأحہث دذب دذخدہؤہحبب رإزب --------
MOVF t, 0
BTFSS STATUS, Z
GOTO Z1
INCF time, 1
INCF BATime, 1
BTFSC BAT, 0
GOTO Z2
CLRF BATime
BCF zumm, 0
GOTO Z1
Z2: MOVF BATime, 0 ; if(BATime>64) BATime=64
SUBLW .255
BTFSS STATUS, Z
GOTO $+5
MOVLW .254
MOVWF BATime
BCF zumm, 0
GOTO $+2
BSF zumm, 0 ; آتثق×بزـ اسججإذ
Z1:
;------------------------- اسججإذ ----------------------------
BTFSS zumm, 0
GOTO NOZUMM
BTFSS time, 5
GOTO NOZUMM
BTFSC t, 1
BSF PORTB, 7
BTFSS t, 1
NOZUMM: BCF PORTB, 7

;------------- دذخآإذتہ حہثب×بك رإزإآخأخ حہدذكئإحبك ----------
; if(T==0){
MOVF T, 0
BTFSS STATUS, Z
GOTO NO_PW
; if(!PWGOOD) {
BTFSS PORTB, PWGOOD
CLRF PWcnt ;}
INCF PWcnt, 1
; if(PWcnt>128) PWcnt=128 {
MOVF PWcnt, 0
SUBLW .128
BTFSC STATUS, C
GOTO $+3
MOVLW .128
MOVWF PWcnt ;}
; }
NO_PW:

;-------------------------- ربحصذخحباہضبك دخ شہاإ ----------
; if(رإزإآخإ حہدذكئإحبإ){
BTFSS PWcnt, 7
GOTO NO_SIN
; }
INCF SINcnt, 1
;_if(نëèيà èىï. > 0.5 ىٌ){
BTFSS PORTB, SINH
CLRF FRONT
INCF FRONT, 1
MOVF FRONT, 0
SUBLW .5
BTFSS STATUS, Z
GOTO INT6
;_ôًîيٍ îليàًَوهي
; ïًîâهًêà ïهًèîنà ٌهٍهâîمî يàïًےوهيèے
MOVF SINcnt, 0
MOVWF SHORT
CLRF SINcnt
SUBLW .195 ; >195
BTFSC STATUS, C
GOTO NO_SIN
MOVF SHORT, 0
SUBLW .205 ; >205
BTFSS STATUS, C
GOTO NO_SIN
; رخءرزآإححخ ربحصذخحباہضبك
MOVF T, 0
SUBLW .5
BTFSC STATUS, C
GOTO SIN1
MOVF T, 0
SUBLW .194
BTFSS STATUS, C
GOTO SIN1
MOVF T, 0
ADDLW 3
MOVWF T
GOTO NO_SIN
SIN1: MOVLW .199
MOVWF T
BSF SIN_OK, 0
GOTO $+2
NO_SIN: CLRF SIN_OK
;__}
INT6:



RETFIE
;__}




END
#
khatib is offline  
Old 19th March 2009, 07:47 PM   #6
Default

Why would you want to change it to a 16F877? A 16F628 would be a better match. Also use code tags and it would be helpful if the comments were in English.
__________________
Bill
Smart Kits build Smart People

http://www.blueroomelectronics.com/
blueroomelectronics is offline  
Old 19th March 2009, 07:52 PM   #7
Default

ok ..
can you explain the last code ??
thanks for your replies
khatib is offline  
Old 19th March 2009, 07:56 PM   #8
Default

Quote:
Originally Posted by blueroomelectronics View Post
Do you have the source code for the 16F84?
hi Bill,
I think youv'e opened Pandora's box.
__________________
Eric " Good enough is Perfect "
I will NOT answer PM's requesting technical help, please use the Forum
PIC tutorials: Nigel's www.winpicprog.co.uk/ Bill's: www.blueroomelectronics.com/
ericgibbs is offline  
Old 19th March 2009, 08:01 PM   #9
Default

ok .. thanks

Last edited by khatib; 19th March 2009 at 08:05 PM.
khatib is offline  
Old 19th March 2009, 09:38 PM   #10
Default

I like the
Code:
BTFSS	PWcnt, 7
	GOTO	NO_SIN
If not true what happens
__________________
Bill
Smart Kits build Smart People

http://www.blueroomelectronics.com/
blueroomelectronics is offline  
Reply

Tags
program

Thread Tools
Display Modes


Similar
Title Starter Forum Replies Latest
MP Lab Program Help bamafan54 Micro Controllers 5 7th January 2009 03:16 PM
"Program verify failed at program address 0x000, progra Jimmy Vivas Micro Controllers 17 25th July 2008 02:36 AM
what exactly does Program Verify Error at Program Address 0x000 mean Gaston Micro Controllers 5 24th December 2006 07:17 PM
new to program kudanhema Datasheet/Parts Requests 1 22nd March 2005 04:59 PM
schematic & program to program pic 16f84a plz mafiaaa Micro Controllers 2 27th November 2004 05:00 PM



All times are GMT. The time now is 09:16 PM.


Electronic Circuits  |  Learning Electronics
eXTReMe Tracker