bonsoir,aprés la création d'un package de transmission sur le modèle tx433 et le rx 433 de radio métrix.J'ai utilisé deux micrôcontrolleurs l'un est lié avec tx433 et l'autre avec rx 433.Pour effectuer l'envoi de la mesure détecter par un capteur de choc(issue d'une alarme automobile) cette mesure dois être transmise ensuite afficher sur lcd après la transmission .Cette mesure prise par le capteur est analogique (donne le degré du choc) pour la transmission j'ai utilisé le codage manchester .Le Problème que j'ai rencontré c'est que on ne récupère la valeur mesurée par le dit capteur (analogique).
Voici le programme que j'ai utilisé:
Pour le tx433:Voici le schéma que j'ai utilisé Sur ISIS :Code:unsigned int adc1=0; char txt[4]; int t=0; void main() { TRISA=1; PORTA=0; TRISD=0; PORTD=0b00000001; Man_Send_Init(); while (1) { adc1=ADC_Read(0); t=adc1*0.098; ByteToStr(t,txt); Man_Send(txt); Delay_ms(100); } } Pour le rx 433: // LCD module connections sbit LCD_RS at RB2_bit; sbit LCD_EN at RB3_bit; sbit LCD_D4 at RB4_bit; sbit LCD_D5 at RB5_bit; sbit LCD_D6 at RB6_bit; sbit LCD_D7 at RB7_bit; sbit LCD_RS_Direction at TRISB2_bit; sbit LCD_EN_Direction at TRISB3_bit; sbit LCD_D4_Direction at TRISB4_bit; sbit LCD_D5_Direction at TRISB5_bit; sbit LCD_D6_Direction at TRISB6_bit; sbit LCD_D7_Direction at TRISB7_bit; sbit MANRXPIN at RC0_bit; sbit MANRXPIN_Direction at TRISC0_bit; sbit MANTXPIN at RC1_bit; sbit MANTXPIN_Direction at TRISC1_bit; char error, ErrorCount, temp; void main() { TRISD=0; PORTD=0b00000001; ErrorCount = 0; Lcd_Init(); Lcd_Cmd(_LCD_CLEAR); Lcd_Cmd(_LCD_CURSOR_OFF); Lcd_Out(1,1," Power "); Lcd_Out(2,1," Choc "); delay_ms(500); Lcd_Cmd(_LCD_CLEAR); Man_Receive_Init(); while (1) { temp = Man_Receive(&error); if (temp>100) { PORTD=0b00000011; Lcd_Cmd(_LCD_CURSOR_OFF); Lcd_Out(1,2,temp); Lcd_Out(1,4,"%"); Lcd_Out(2,1," Choc "); delay_ms(1000); break; } else {PORTD=0b00000101; lcd_Out(2,1,"aucun choc");} } }.
Veuillez me proposer une solution si c'est possible et merci d'avance.
-----