 |

|
|
Elektronika.lt portalo forumas
Jūs esate neprisijungęs lankytojas. Norint dalyvauti diskusijose, būtina užsiregistruoti ir prisijungti prie forumo.
Prisijungę galėsite kurti naujas temas, atsakyti į kitų užduotus klausimus, balsuoti forumo apklausose.
Administracija pasilieka teisę pašalinti pasisakymus bei dalyvius,
kurie nesilaiko forumo taisyklių.
Pastebėjus nusižengimus, prašome pranešti.
Dabar yra 2025 12 20, 13:00. Visos datos yra GMT + 2 valandos.
|
|
|
 |
Forumas » Mikrovaldikliai » I2C bus
|
Jūs negalite rašyti naujų pranešimų į šį forumą Jūs negalite atsakinėti į pranešimus šiame forume Jūs negalite redaguoti savo pranešimų šiame forume Jūs negalite ištrinti savo pranešimų šiame forume Jūs negalite dalyvauti apklausose šiame forume
|
|
|
 |
 |
I2C bus |
Parašytas: 2006 09 19, 09:54 |
|
|
|
|
| BLASTER rašo: |
Nėra tas hardwarinis toks jau sudėtingas. Štai funkcija (Atmega8):
| Kodas: |
unsigned char I2CWriteByte(unsigned char I2Caddress, unsigned char adressH, unsigned char adressL, unsigned char data){
} |
Čia viskas, ko reikia.
Ši funkcija paima I2C čipo adresą, to čipo atminties adresą ir duomenis. Pamodifikavus galima pasirašyti paprogrames char duomenims ir burst mode'ui. |
Truputuka nepagavau kampo (turbut per mazos zinios apie i2c). Kiek supratau "data" yra duomenys siunciami valdomajam, "I2Caddress" valdomojo adresas, o kas tie "adressH" ir "adressL"? |
|
_________________ I GAVE UP DRINKING, SMOKING AND SEX!
it was the worse 15 minutes of my life! |
|
|
|
 |
I2C bus |
Parašytas: 2006 09 19, 17:43 |
|
|
|
|
| Chulio rašo: |
| [...] o kas tie "adressH" ir "adressL"? |
Viską supratai gerai.
adressL ir R yra valdomojo įrenginio vidinis atminties adresas. Su dviem baitais galima adresuoti iki 64kB.. |
|
|
|
|
|
 |
I2C bus |
Parašytas: 2006 09 20, 17:06 |
|
|
|
|
| aš tiesą sakant koampo irgi nepagavau (kol kas dar gaudau jį) klausimas, o kas tie TWSR, TWBR,TWAR,TWCR,TWDR? |
|
_________________ nepamirškit, klysti žmogiška
privatas - privatiems klausimams
arch linux  |
|
|
|
 |
I2C bus |
Parašytas: 2006 09 20, 17:32 |
|
|
|
|
| JAULER rašo: |
| aš tiesą sakant koampo irgi nepagavau (kol kas dar gaudau jį) klausimas, o kas tie TWSR, TWBR,TWAR,TWCR,TWDR? |
TWSR - Two Wire interface Status Register
TWBR - Two Wire interface Bit rate Register
TWAR - Two Wire interface Address Register
TWCR - Two Wire interface Control Register
TWDR - Two Wire interface Data Register.
Jie naudojami hardwariniam I2C interfeisui palaikyti. |
|
|
|
|
|
 |
I2C bus |
Parašytas: 2006 09 20, 17:49 |
|
|
|
|
| ačiū, o ATMEGA 16 tie (SCL SDA) portasi jungiasi ant PC0 ir PC1? |
|
_________________ nepamirškit, klysti žmogiška
privatas - privatiems klausimams
arch linux  |
|
|
|
 |
I2C bus |
Parašytas: 2006 09 20, 18:28 |
|
|
|
|
|
 |
I2C bus |
Parašytas: 2006 09 20, 18:34 |
|
|
|
|
| dar klausimas, ar reikia ką keisti norint pritaikyti viską ATMEGA16? |
|
_________________ nepamirškit, klysti žmogiška
privatas - privatiems klausimams
arch linux  |
|
|
|
 |
I2C bus |
Parašytas: 2006 09 20, 22:06 |
|
|
|
|
As dar apie I2C hardwara norejau pasiteirauti. Ar galima prie SDA ir SCL liniju jungti po du LED su 1k varzomis i Vdd ir Gnd (signalu stebejimui)?
10k varzos i Vdd irgi pajungtos kaip pull-ups rezistriai, be kuriu neturetu veikti I2C. |
|
|
|
|
|
 |
I2C bus |
Parašytas: 2006 09 20, 22:38 |
|
|
|
|
| tik nejunk prie gnd, junk prie + diodus ir bus gerai |
|
|
|
|
|
 |
I2C bus |
Parašytas: 2006 09 21, 07:40 |
|
|
|
|
| JAULER rašo: |
| dar klausimas, ar reikia ką keisti norint pritaikyti viską ATMEGA16? |
Tiksliai nepasakysiu. Pagal mane yra nesunkus budas tai suzinoti: paimi atmega8 ir atmega16 datasheet'us ir lygini ar sutampa bitai visuose TW registruose. Jei kas ir keisis, tai manau, kad tik registru nustatymai (1-u ir 0-iu padetys). |
|
_________________ I GAVE UP DRINKING, SMOKING AND SEX!
it was the worse 15 minutes of my life! |
|
|
|
 |
 |
I2C bus |
Parašytas: 2006 09 21, 07:48 |
|
|
|
|
| BLASTER rašo: |
| Chulio rašo: |
| [...] o kas tie "adressH" ir "adressL"? |
Viską supratai gerai.
adressL ir R yra valdomojo įrenginio vidinis atminties adresas. Su dviem baitais galima adresuoti iki 64kB.. |
Manau daejo.... Paskaiciau pcf8576 datasheet'a. Siam chipui tarp adreso+R/W ir data turi buti siunciamas ne maziau kaip vienas (be data perdavimo komandos tra dar 4) komandos baitas, nustatantis cipo parametrus. |
|
_________________ I GAVE UP DRINKING, SMOKING AND SEX!
it was the worse 15 minutes of my life! |
|
|
|
 |
 |
I2C bus |
Parašytas: 2006 09 21, 13:21 |
|
|
|
|
| Chulio rašo: |
| JAULER rašo: |
| dar klausimas, ar reikia ką keisti norint pritaikyti viską ATMEGA16? |
Tiksliai nepasakysiu. Pagal mane yra nesunkus budas tai suzinoti: paimi atmega8 ir atmega16 datasheet'us ir lygini ar sutampa bitai visuose TW registruose. Jei kas ir keisis, tai manau, kad tik registru nustatymai (1-u ir 0-iu padetys). |
ačiū |
|
_________________ nepamirškit, klysti žmogiška
privatas - privatiems klausimams
arch linux  |
|
|
|
 |
I2C bus |
Parašytas: 2006 09 21, 13:22 |
|
|
|
|
Dar apie I2C.
mano slave adress 10100000, noriu irasyti duomenis [pvz 13] i registra [pvz 06].
Ar teisingai darau:
"Start",10100000, [gaunu ACK is slave], 00001101, [gaunu ACK is slave], 00000110 [gaunu ACK is slave], "Stop" ???
Dar noriu nuskaityti duomenis is registro (memory location 05). Ar teisingai:
"Start",10100000, [gaunu ACK],00000101,[gaunu ACK],"Start",10100001, [gaunu ACK],[skaitau 8 bitus], [nusiunciu ACK], "Stop" ??? |
|
|
|
|
|
 |
 |
I2C bus |
Parašytas: 2006 09 21, 14:37 |
|
|
|
|
| Dzonis rašo: |
mano slave adress 10100000
|
visu pirma adress is 7 bitu, 8-as bitas ->R/W (R - read (1), W - write (0))
| Dzonis rašo: |
Dar noriu nuskaityti duomenis is registro (memory location 05). Ar teisingai:
"Start",10100000, [gaunu ACK],00000101,[gaunu ACK],"Start",10100001, [gaunu ACK],[skaitau 8 bitus], [nusiunciu ACK], "Stop" ??? |
I nuskaityma dar nesu labai isigilines, bet manau, kad pradzia turetu buti tokia: "start", 10100001, ... Idemiau paziurek datasheet'a to cipo kuri nuskaityt nori. [/b] |
|
_________________ I GAVE UP DRINKING, SMOKING AND SEX!
it was the worse 15 minutes of my life! |
|
|
|
 |
 |
I2C bus |
Parašytas: 2006 09 21, 15:08 |
|
|
|
|
Jeigu pradedi "Start", xxxxxxx1, tada slave iskart po ACK jau turetu siusti duomenis, bet nezinotu is kurios memory location siusti...
As zinau, kad paskutinis slave address bitas yra R/W: "1" kai ruosiesi priimti duomenis iskart po "ACK" ir "0" kai ruosiesi irasyti.
Bet kaip galetu atrodyti visas "sakinys" su "start", slave address+R/W 8bit, memory location 8bit, data 8bit ir "stop"???
Kokia tvarka viskas issidesto skaitant ir rasant?
Datasheet'us ne karta skaiciau, bet bendra struktura liko kiek neaiski. |
|
|
|
|
|
|
 |
Google paieška forume |
|
|
 |
Naujos temos forume |
|
 |
FS25 Tractors
Farming Simulator 25 Mods,
FS25 Maps,
FS25 Trucks |
 |
ETS2 Mods
ETS2 Trucks,
ETS2 Bus,
Euro Truck Simulator 2 Mods
|
 |
FS22 Tractors
Farming Simulator 22 Mods,
FS22 Maps,
FS25 Mods |
 |
Dantų protezavimas
All on 4 implantai,
Endodontija mikroskopu,
Dantų implantacija |
 |
FS25 Mods
FS25 Maps,
FS25 Cheats,
FS25 Install Mods |
 |
FS25 Mods
Farming Simulator 25 Mods,
FS25 Maps |
 |
ATS Trailers
American Truck Simulator Mods,
ATS Trucks,
ATS Maps |
 |
Must have farming mods
Farming simulator modhub,
Best farming simulator mods |
|

|
 |