bonjour,je veux faire une horloge
je suis débutant en programation de pic
qui peut m'aide de programmer une horloge avec micropascal et faire son construction sur isis
je utulise pic16f84a
et merci
-----
bonjour,je veux faire une horloge
je suis débutant en programation de pic
qui peut m'aide de programmer une horloge avec micropascal et faire son construction sur isis
je utulise pic16f84a
et merci
Bonjour,
Nous sommes la pour t'aide et pas pour faire ton travaille.
Dit nous ce que tu as fait? et ou tu bloques?
A++
pour moi j'ai résolu dans le program si tu veux je te le voix mais au cour de ce program je suis bloqueé
et je suis fait le shémain sur isis
moi je veux l'aide sur le micro pascal seulement
fais voir ton shéma ?(qui donc travaille encore en microPascal ?)
Beaucoup de monde parce que c'est un excellent compilateur (http://www.mikroe.com/mikropascal/pic/).
Perso j'utilise la version pour AVR.
j'croyais que tout le monde était passé au C....
pour mes petites applis je reste à l'ASM... pour le moment
Oui, mais pour des applis un peu conséquentes, un langage de haut niveau est plus...confortable !
Le C est une référence historique, mais je trouve que c'est un langage trop permissif (on peut passer du temps à chercher pourquoi le programme ne fait pas ce qu'on veut).
Le Pascal est exactement ce qu'il me faut, mais c'est une question de goût !
voila que je suis travaillé monsieur
et voila son programtion en micro pascal
et moi je veux sur afficheur 7 segment .est ce que vous pouvez m'aiderCode:program pcf; var Sec, Min, Hr, Day, Mn, Year : byte; txt : string[15]; procedure Zero_fill(var value: array[3] of char); begin if value[1]=' ' then value[1] := 48; value[0] := ':'; end; procedure Read_time(var Sec, Min, Hr, Day, Mn, Year : byte); begin I2C_start; I2C_Wr($A0); I2C_Wr(2); I2C_Repeated_Start; I2C_Wr($A1); sec :=I2C_Rd(1); while I2C_Is_Idle = 0 do nop; min :=I2C_Rd(1); while I2C_Is_Idle = 0 do nop; hr :=I2C_Rd(1); while I2C_Is_Idle = 0 do nop; day :=I2C_Rd(1); while I2C_Is_Idle = 0 do nop; mn :=I2C_Rd(0); while I2C_Is_Idle = 0 do nop; I2C_Stop; end; procedure Transform_time(var Sec, Min, Hr, Day, Mn, Year : byte); begin sec := ((sec and $F0) shr 4)*10 + (sec and $0F); min := ((min and $F0) shr 4)*10 + (min and $0F); hr := ((hr and $F0) shr 4)*10 + (hr and $0F); year := ((day and $C0)) shr 6; day := ((day and $30) shr 4)*10 + (day and $0F); mn := ((mn and $10) shr 4)*10 + (mn and $0F); end; procedure Display_time(Sec, Min, Hr, Day, Mn, Year : byte); begin ByteToStr(day,txt); Zero_fill(txt); LCD_Out(1,5,txt); ByteToStr(mn,txt); Zero_fill(txt); LCD_Out(1,8,txt); LCD_Chr(1,15,52+year); ByteToStr(hr,txt); Zero_fill(txt); LCD_Out(2,5,txt); ByteToStr(min,txt); Zero_fill(txt); LCD_Out(2,8,txt); ByteToStr(sec,txt); Zero_fill(txt); LCD_Out(2,11,txt); end; procedure Init; begin OPTION_REG := $7F; LCD_Config(portb,0,2,1,6,5,4,3); I2C_init(100000); txt := 'Date:'; LCD_Out(1,1,txt); Lcd_Chr(1,8,':'); Lcd_Chr(1,11,':'); txt := 'Time:'; LCD_Out(2,1,txt); Lcd_Chr(2,8,':'); Lcd_Chr(2,11,':'); txt := '200'; LCD_Out(1,12,txt); Lcd_Cmd(LCD_CURSOR_OFF); end; begin Init; while true do begin Read_Time(Sec, Min, Hr, Day, Mn, Year); Transform_Time(Sec, Min, Hr, Day, Mn, Year); Display_Time(Sec, Min, Hr, Day, Mn, Year); Delay_ms(10); end; end.
Dernière modification par gienas ; 13/03/2013 à 13h23. Motif: Ajouté les balises code, obligatoires pour les programmes
si tu as travaillé pour un affichage LCD , pourquoi n'as-tu pas fait en 7 segments.....
ça sent la carabistouille tout ça
pour faire un afficheur 7 seg je suis bloqueé
d'autant que tu n'es pas l'auteur du shéma...
Bonjour.
Quand on pompe sans comprendre ce con fait, on ne peut alors rien modifier pour faire croire à son qu'on de prof. con a bossé!
A+
Il n'y a que dans le dictionnaire où 'réussite' vient avant 'travail'.
Mon ami Allez-vous m'aider ou pas ?
sinon laisse la place pour les autres
es-tu l'auteur du shéma ? oui ou non ??
oui monsieur
Tu as fait le schéma pour un 16f84a qui a 40 pattes ? Tu programmes avec Mikropascal pour AVR ? Y'a pas comme un soucis ?
quand on nous prend à ce point pour des'c , je ne répond même plus !
Bonjour et bienvenue sur FUTURA,
Est ce que tu es bloqué au niveau de la programmation ?? si oui , tu as quoi comme erreur ?
Peux tu me dire pourquoi tu as un 877 sur ton schéma alors que tu veux travailler avec pic16f84a ?
parce qu'il a bidoché le schéma sans comprendre...