 |

|
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 02 21, 14:43. Visos datos yra GMT + 2 valandos.
|
|
|
 |
Forumas » Mikrovaldikliai » Atmega 16 i2c
|
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
|
|
|
 |
Atmega 16 i2c |
Parašytas: 2008 02 18, 22:30 |
|
|
|
Gal kas nors turite I2C soursa ? |
|
|
|
|
 |
Atmega 16 i2c |
Parašytas: 2008 02 19, 13:43 |
|
|
|
Šitą jau bandžiau
Nepavyko. Niekaip negauna ACK.
Bandant atlikti duomenų siuntimą viskas pakimba
Niekaip nesuprantu kame beda. Gal kokių nustatymų neįvedu.
Įsikeliu reikiamus failus ir bandau atlikti siuntimą.
Išbandžiau ir hardvarinį ir softwarinį.
Procas Atmega16 + PCF8583 |
|
|
|
|
 |
Atmega 16 i2c |
Parašytas: 2008 02 19, 16:03 |
|
|
|
juk viskas datasheet`e yra surašyta, parašyta, su visom smulkmenom  |
|
_________________ nepamirškit, klysti žmogiška
privatas - privatiems klausimams
arch linux  |
|
|
|
 |
Atmega 16 i2c |
Parašytas: 2008 02 19, 19:28 |
|
|
|
O užkabinai pull-up rezistorius?
Jei naudoji CodeVision tai ten yra gatava biblioteka ir I2C ir PCF8583, paleist labai paprasta, net pavyzdys yra kiek pamenu.. |
|
|
|
|
 |
Atmega 16 i2c |
Parašytas: 2008 02 19, 20:52 |
|
|
|
Deja pas mane vista ir code vision neveikia:(
Naudoju avr studio.
As naudoju 4.7 k pulup rezistorius. |
|
Paskutinį kartą redagavo Ciklius, 2008 02 20, 00:33. Redaguota 2 kartus(ų) |
|
|
|
 |
 |
Atmega 16 i2c |
Parašytas: 2008 02 19, 20:57 |
|
|
|
Pagaliau uzkuriau ta prakeikta i2c.
Jeigu kam idomu RTC PCF853 sourcas ant atmegos16
Source:
Funkcijos is AvrLib i2c sourco
Kodas: |
// PCF8583.H
#define PCF8583_WRITE_ADDRESS 0xA0
#define PCF8583_READ_ADDRESS 0xA1
// Register addresses
#define PCF8583_CTRL_STATUS_REG 0x00
#define PCF8583_100S_REG 0x01
#define PCF8583_SECONDS_REG 0x02
#define PCF8583_MINUTES_REG 0x03
#define PCF8583_HOURS_REG 0x04
#define PCF8583_DATE_REG 0x05
#define PCF8583_MONTHS_REG 0x06
#define PCF8583_TIMER_REG 0x07
#define PCF8583_ALARM_CONTROL_REG 0x08
#define PCF8583_ALARM_100S_REG 0x09
#define PCF8583_ALARM_SECS_REG 0x0A
#define PCF8583_ALARM_MINS_REG 0x0B
#define PCF8583_ALARM_HOURS_REG 0x0C
#define PCF8583_ALARM_DATE_REG 0x0D
#define PCF8583_ALARM_MONTHS_REG 0x0E
#define PCF8583_ALARM_TIMER_REG 0x0F
// Use the first NVRAM address for the year byte.
#define PCF8583_YEAR_REG 0x10
// Commands for the Control/Status register.
#define PCF8583_START_COUNTING 0x00
#define PCF8583_STOP_COUNTING 0x80
///////////////////
void PCF8583_write_byte(char address, char data)
{
cbi(TWCR, TWIE);
i2cSendStart();
i2cWaitForComplete();
i2cSendByte(PCF8583_WRITE_ADDRESS);
i2cWaitForComplete();
i2cSendByte(address);
i2cWaitForComplete();
i2cSendByte(data);
i2cWaitForComplete();
i2cSendStop();
sbi(TWCR, TWIE);
}
void PCF8583_write_bdc(int address, int data)
{
int sk1, sk2;
sk1 = data % 10;
sk2 = data / 10;
sk2 = sk2 * 16;
sk2 += sk1;
cbi(TWCR, TWIE);
i2cSendStart();
i2cWaitForComplete();
i2cSendByte(PCF8583_WRITE_ADDRESS);
i2cWaitForComplete();
i2cSendByte(address);
i2cWaitForComplete();
i2cSendByte(sk2);
i2cWaitForComplete();
i2cSendStop();
sbi(TWCR, TWIE);
}
//----------------------------------------------
int PCF8583_read_byte(char address)
{
int datam, dt1, dt2;
datam=0;
cbi(TWCR, TWIE);
i2cSendStart();
i2cWaitForComplete();
i2cSendByte(PCF8583_WRITE_ADDRESS);
i2cWaitForComplete();
i2cSendByte(address);
i2cWaitForComplete();
i2cSendStart();
i2cWaitForComplete();
i2cSendByte(PCF8583_READ_ADDRESS);
i2cWaitForComplete();
i2cReceiveByte(FALSE);
i2cWaitForComplete();
datam = TWDR;
i2cSendStop();
sbi(TWCR, TWIE);
dt1 = datam & 0x0f;
dt2 = datam >> 4;
datam = dt2*10 + dt1;
return(datam);
}
int PCF8583_read_byte1(int address)
{
int datam;
datam=0;
cbi(TWCR, TWIE);
i2cSendStart();
i2cWaitForComplete();
i2cSendByte(PCF8583_WRITE_ADDRESS);
i2cWaitForComplete();
i2cSendByte(address);
i2cWaitForComplete();
i2cSendStart();
i2cWaitForComplete();
i2cSendByte(PCF8583_READ_ADDRESS);
i2cWaitForComplete();
i2cReceiveByte(FALSE);
i2cWaitForComplete();
datam = TWDR;
return(datam);
}
void PCF8583_init(void)
{
PCF8583_write_byte(PCF8583_CTRL_STATUS_REG,
PCF8583_START_COUNTING);
}
|
|
|
|
|
|
 |
 |
Atmega 16 i2c |
Parašytas: 2009 01 27, 17:41 |
|
|
|
tai antko buvai pasimoves? dabar pats su ds1307 kankinuos... |
|
|
|
|
 |
 |
Atmega 16 i2c |
Parašytas: 2009 01 28, 17:59 |
|
|
|
paprastas twi ds1307 pvz:
Kodas: |
//*** IAR *** ATmega16 4.096 MHz ***
#include <ioavr.h>
#include <intrinsics.h>
#define bitas(PIN,BIT) (PIN &(1 << BIT))
#define TWINT 7
//************************************************
void TWI_Start(void){
TWCR = 0xA4;
while(1){
if(bitas(TWCR,TWINT)){
return;
}
}
}
//************************************************
void TWI_Stop(void){
TWCR = 0x94;
}
//************************************************
void TWI_Write(unsigned char _data){
TWDR = _data;
TWCR = 0x84;
while(1){
if(bitas(TWCR,TWINT)){
return;
}
}
}
//************************************************
unsigned char TWI_Read(void){
TWCR = 0x84;
while(1){
if(bitas(TWCR,TWINT)){
return TWDR;
}
}
}
//************************************************
void main( void ){
DDRA = 255;
TWBR = 42; // Fscl = Fclk / (16 + (2 * TWBR * 4^TWPS))
TWI_Start();
TWI_Write(0xD0); //DS1307 adr. 0b1101000(0) - rasyti
TWI_Write(0x00); //Sekundziu adresas
TWI_Start();
TWI_Write(0xD1); //0b1101000(1) - skaityti
PORTA = TWI_Read(); //skaito sekundes
TWI_Stop();
while(1){
}
}
|
proteus simuliacija  |
|
|
|
|
 |
 |
Atmega 16 i2c |
Parašytas: 2009 01 29, 07:42 |
|
|
|
dekui pravers.
nors jau ir su softwariniu i2c susitvarkiau. ant start bito buvau susimoves.. |
|
|
|
|
 |
Atmega 16 i2c |
Parašytas: 2009 03 03, 22:17 |
|
|
|
gal kas DS1307 su i2c.h avrlib paleidot. Nu niekaip negaliu. kaskaip neisein man jo paleist. jis ale gauna patvirtinimus, bet skaiciai tai nesikeicia jei bandai rasyt. ir septinta registra statant nesikeicia OUT kojos busena. |
|
|
|
|
 |
Atmega 16 i2c |
Parašytas: 2009 03 04, 11:13 |
|
|
|
paleidau, visu pirma buva Vbat i graunda nepajungtas. tada pas mane su skaitymu kashkas ne to. su avrlibu skaitant
i2cMasterReceiveNI(0xD0,8,&dstt[0]);
pastoviai gaunu kashkokius skaicius bet jie nesikeic.kodel nzn, reiks pabandyt pasiaiskint. pakolkas paleidau su tuo kodu kur centronic pateike. |
|
|
|
|
|
 |
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 |
 |
VAT calculator
VAT number check,
What is VAT,
How much is VAT |
 |
LEGO
Mänguköök,
mudelautod,
nukuvanker |
 |
KCD2 Mods
Installing KCD 2 Mods,
KCD 2 Guides,
KCD 2 Cheats |
 |
FS25 Mods
FS25 Harvesters,
FS25 Tractors Mods,
FS25 Maps Mods |
 |
Dantų protezavimas
All on 4 implantai,
Endodontija mikroskopu,
Dantų implantacija |
 |
FS25 Mods
FS25 Maps,
FS25 Cheats,
FS25 Install Mods |
 |
GTA 6 Wiki
GTA 6 Map,
GTA 6 Characters,
GTA 6 News |
 |
FS25 Mods
Farming Simulator 25 Mods,
FS25 Maps |
 |
ATS Trailers
American Truck Simulator Mods,
ATS Trucks,
ATS Maps |
|

|
 |