gogi000
-
14 août 2012 à 14:12
cs_ghuysmans99
Messages postés3983Date d'inscriptionjeudi 14 juillet 2005StatutMembreDernière intervention30 juin 2013
-
16 août 2012 à 10:28
bonjour,
y aurait-il moyen de pouvoir transformer un code écrit en basic vers le c?
je dois écrire une programmation d'un pic en c
mais j'ai trouver un code déja écris en basic, le soucis est de le retranscrire en c.
comme par exemple:
as byte par rapport en c ?
as word?
dim = define ou int?
et surtout le
For i = 0 to PosDecPoint+2
DisplayString[i] = SensorString[i]
Next i
par rapport au c ?
dont voici la programmation:
program IR_Thermometer
dim LCD_RS as sbit at RB2_bit
LCD_EN as sbit at RB3_bit
LCD_D4 as sbit at RB4_bit
LCD_D5 as sbit at RB5_bit
LCD_D6 as sbit at RB6_bit
LCD_D7 as sbit at RB7_bit
LCD_RS_Direction as sbit at TRISB2_bit
LCD_EN_Direction as sbit at TRISB3_bit
LCD_D4_Direction as sbit at TRISB4_bit
LCD_D5_Direction as sbit at TRISB5_bit
LCD_D6_Direction as sbit at TRISB6_bit
LCD_D7_Direction as sbit at TRISB7_bit
' End LCD module connections
' Variable definitions
dim SensorLow as byte ' Raw temp. low byte
SensorHigh as byte ' Raw temp. high byte
SensorRaw as word ' Raw temp. word
SensorRawCur as word ' Current raw temp.
SensorRawMax as word ' Max. raw temp.
SensorRawMin as word ' Min. raw temp.
Sensor as float ' Real temp (floating point)
SensorString as string[9]
DisplayString as string[9]
PEC as byte ' Control byte (read but not used)
com as byte ' MLX90614 command
PosDecPoint as byte ' Decimal point position
i as byte
' Procedure definition
' Read Temperature From MLX90614
' Input : com specify temp. to read
' Output : raw temp as a word
' Convert raw data in SensorRaw
' to displayable string in DisplayString
Sub procedure Convert_raw
Sensor = SensorRaw * 0.02 - 273.15 ' Raw temp to Celsius
FloatToStr (Sensor, SensorString) ' Float to string
PosDecPoint = Strchr (SensorString,".") ' Search for dec. point
For i = 0 to PosDecPoint+2 ' Limit display to two digits
DisplayString[i] = SensorString[i] ' after decimal point
Next i
DisplayString[PosDecPoint+3]= ""
DisplayString = DisplayString + " C"
End sub
' Main Program
main:
' Initialize I/O
PORTB = 0
TRISB = 0 ' All PORTB lines as output
ADCON1 = 0x0F ' Configure AN pins as digital I/O
cs_ghuysmans99
Messages postés3983Date d'inscriptionjeudi 14 juillet 2005StatutMembreDernière intervention30 juin 201316 14 août 2012 à 15:47
#define unsigned char byte
#define unsigned short word
/*Dim x as byte */ byte x;
/*Dim y as word */ word y;
/*For i = 0 To y*/ for (i=0; i<=y; i++) {
DisplayString[i] = SensorString[i]; //juste un ; en plus
/*Next i*/ }
VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question
cs_ghuysmans99
Messages postés3983Date d'inscriptionjeudi 14 juillet 2005StatutMembreDernière intervention30 juin 201316 16 août 2012 à 10:28
ce n'est qu'une retransription littéraire en c?
Littérale, plutôt ?
Non, des trucs comme ça DisplayString = DisplayString + " C" --> strcat(DisplayString, " C"); Une ligne que je ne sais pas traduire en C : dim LCD_RS as sbit at RB2_bit
VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question