mikroPascal a SHT potazmo I2C

Radek a Petra Vickovi rvicek@quick.cz
Neděle Listopad 28 23:29:21 CET 2004


Zdravim,
 nepouzivate nekdo mikroPascal pro PICy? Dneska jsem se rozhodl si napsat
vlastni obsluhu SHT11 s tim, ze to zkusim s mikroPascalem pac do ASM se mi
nechtelo kvuli tomu slozitemu linearizacnimu retezci.

Vsechno mam napsany odladeny - celou matematiku vcetne zobrazeni a
ztroskotal jsem na tom cteni SHT - vicemene nevim proc se mi nechce
zinicializovat rutina  Soft_I2C_Config  - zjistil jsem ze to ceka z nejakeho
duvodu az neco nahodi SCK do 1 nicmene nevim co by to tam melo nahodit kdyz
master je MCU a hodiny by si mel sam ridit!!!

Tady je ta rutina a prosim nedeste se je to muj prvni vytvor a bude se
optimalizovat.

procedure CtiSHT;
begin
       TRISA := 0;                 //PORTA je output
     //Transmission Start
     SetBit(PORTA,0);ClearBit(PORTA,1) ;
     nop;
     SetBit(PORTA,1);
     nop;
     ClearBit(PORTA,0);
     nop;
     ClearBit(PORTA,1) ;
     nop;nop;nop;
     SetBit(PORTA,1);
     nop;
     SetBit(PORTA,0);
     nop;
     ClearBit(PORTA,1) ;
     //Transmission End
     
     Soft_I2C_Config(PORTA,0,1);    //procedure Soft_I2C_Config(var Port :
byte; const SDA, SCL : byte; clock : longint);
     TRISA := 0;                     // PORTA is output
     PORTA := $FF;
     Soft_I2C_Start;
     Soft_I2C_Write(%00000011);     //posilame prikaz cteni teploty
     Soft_I2C_Stop;

     Delay_ms(220);                 //pockam na prevod

     Soft_I2C_Start;
     T_MSB := Soft_I2C_Read(1);     //ctu horni byte s potvrzenim ACK
     T_LSB := Soft_I2C_Read(1);     //ctu dolni byte s potvrzenim ACK
     Soft_I2C_Stop;
end;

-- 
Odchozí zpráva neobsahuje viry.
Zkontrolovßno Antivirovým systémem AVG.
Verze: 7.0.290 / Virová báze: 265.4.3 - datum vydání: 26.11.2004
 




Další informace o konferenci Hw-list