Non-conformist> Сергей, ты ДБ установил? Кинул бы нужный кусок мемсового текста в папку. Или прямо сюда. У меня есть старый ПИКовский компилятор - можно попробовать скомпилить. Только надо, чтобы оно на УАРТ выводилось. Чтобы я мог лог писать с датчиков.
C ДБ щас сделаю, отправлю мыло Хан-у для инвайта.
Щас посылки пакую нет времени попробовать, ночью только.
Не надо старый! Тебе демки хватит.
Самый лучший компилятор для новичка это mikroC от
MikroElektronika - Development tools, Compilers, Books (есть конечно поломаный на
Ссылка запрещена по требованию [показать]PGRpdiBjbGFzcz0icm91bmRfYm94IHNoYWRvdzggbXRvcDgiPgo8ZGl2IGNsYXNzPSJyc19ib3hfbmQgZmxvYXRfbGVmdCBtdG9wOCIgc3R5bGU9IndpZHRoOjIwMHB4O2hlaWdodDoxNDNweDsiPjxpbWcgc3JjPSJodHRwOi8vd3d3LmJhbGFuY2VyLnJ1L2NhY2hlL19jZy9fc3Qvb3JnL3IvcnV0cmFja2VyLzIwMHgyMDAvYUhSMGNEb3ZMM0oxZEhKaFkydGxjaTV2Y21jdlptOXlkVzB2ZG1sbGQzUnZjR2xqTG5Cb2NEOTBQVEl3TVRZek5qYz0tNDAweDMwMC5wbmciIHdpZHRoPSIyMDAiIGhlaWdodD0iMTQzIiBhbHQ9IiIgY2xhc3M9Im1haW4iIC8+PC9kaXY+CgoKPGgzPjxhIGhyZWY9Imh0dHA6Ly9ydXRyYWNrZXIub3JnL2ZvcnVtL3ZpZXd0b3BpYy5waHA/dD0yMDE2MzY3IiByZWw9Im5vZm9sbG93IiBjbGFzcz0iZXh0ZXJuYWwiPk1pa3JvRWxla3Ryb25pa2EgQ29tcGlsZXJzIE1pa3JvQyBQUk8vTWlrcm9CYXNpYyBQUk8vTWlrcm9QYXNjYWwgUFJPIDo6IFJ1VHJhY2tlci5vcmc8L2E+PC9oMz4KClJ1VHJhY2tlci5vcmcgwrsg0KHRgNC10LTRiyDQv9GA0L7Qs9GA0LDQvNC80LjRgNC+0LLQsNC90LjRjywg0LrQvtC80L/QuNC70Y/RgtC+0YDRiyDQuCDQstGB0L/QvtC80L7Qs9Cw0YLQtdC70YzQvdGL0LUg0L/RgNC+0LPRgNCw0LzQvNGLIMK7INCh0LrQsNGH0LDRgtGMINGC0L7RgNGA0LXQvdGCIE1pa3JvRWxla3Ryb25pa2EgQ29tcGlsZXJzIE1pa3JvQyBQUk8vTWlrcm9CYXNpYyBQUk8vTWlrcm9QYXNjYWwgUFJPCgo8c3BhbiBjbGFzcz0idHJhbnNncmF5Ij48c21hbGw+Ly8mbmJzcDs8YSBocmVmPSJodHRwOi8vcnV0cmFja2VyLm9yZy9mb3J1bS92aWV3dG9waWMucGhwP3Q9MjAxNjM2NyIgcmVsPSJub2ZvbGxvdyIgY2xhc3M9ImV4dGVybmFsIj5ydXRyYWNrZXIub3JnPC9hPjwvc21hbGw+PC9zcGFuPgo8ZGl2IGNsYXNzPSJjbGVhciI+Jm5ic3A7PC9kaXY+PC9kaXY+Cg==
вот ДЕБИЛЫ!!! а мы их КОНЕМ!!! rutracker.org/forum/viewtopic.php?t=2016367 опа! но и в демо до 2 Кб кода достаточно
MikroElektronika - mikroC PRO for PIC - IDE - Integrated Development Enviroment ) главное там руководство с примерами как раз на 877 - смотрите читайте -
http://www.mikroe.com/downloads/get/30/mikroc_pic_pro_manual_v101.pdf
mikroC имеет встроеный симулятор, сразу !!!в коде Си показывает АСМ код!!! интегрируется конечно же в MPLAB и в PROTEUS.
Ща себе поставлю новейший 6 демо... ух!
и вот код еще PIC16F877a for gyro L3G4200D
View unanswered posts | View active topics
Board index » Compilers » mikroBasic Compilers » mikroBasic PRO compiler for PIC » mikroBasic PRO for PIC General
All times are UTC + 1 hour
Board index » Compilers » mikroBasic Compilers » mikroBasic PRO compiler for PIC » mikroBasic PRO for PIC General
All times are UTC + 1 hour
Users browsing this forum: No registered users and 2 guests
// www.mikroe.com
#define Accel_Wr 0x30
#define Accel_Rd 0x31
#define Gyro_Wr 0xD0
#define Gyro_Rd 0xD1
#define WHO_AM_I 0x0F
#define CTRL_REG1 0x20
#define CTRL_REG2 0x21
#define CTRL_REG3 0x22
#define CTRL_REG4 0x23
#define CTRL_REG5 0x24
#define CTRL_REG6 0x25
#define OUT_X_L 0x28
#define OUT_X_H 0x29
#define OUT_Y_L 0x2A
#define OUT_Y_H 0x2B
#define OUT_Z_L 0x2C
#define OUT_Z_H 0x2D
#define FIFO_CTRL_REG 0x2E
//*** Prototypes ***//
void Accel_Init(void);
void Gyro_Init(void);
void Write1Byte(u8 Device_Wr,u8 I2Cadr,u8 I2Cdata);
u8 Read1Byte(u8 Device_Wr,u8 I2Cadr);
int TwoComp(u8 MSB, u8 LSB);
TriAxes GetSensor(u8 I2Cadr);
//*** Get Sensor ***//
TriAxes GetSensor(u8 I2Cadr)
{
u8 Xlow,Xhigh,Ylow,Yhigh,Zlow,Zhigh;
TriAxes SensorAxe;
Xlow = Read1Byte(I2Cadr,OUT_X_L);
Xhigh = Read1Byte(I2Cadr,OUT_X_H);
Ylow = Read1Byte(I2Cadr,OUT_Y_L);
Yhigh = Read1Byte(I2Cadr,OUT_Y_H);
Zlow = Read1Byte(I2Cadr,OUT_Z_L);
Zhigh = Read1Byte(I2Cadr,OUT_Z_H);
SensorAxe.X = TwoComp(Xhigh, Xlow);
SensorAxe.Y = TwoComp(Yhigh, Ylow);
SensorAxe.Z = TwoComp(Zhigh, Zlow);
return SensorAxe;
}
//*** Two's Complement ***//
int TwoComp(u8 MSB, u8 LSB)
{
int result;
u16 temp;
temp = (MSB * 256) + LSB;
//return temp;
result = ~temp + 1;
return result;
}
//*** Accel_Init ***//
void Accel_Init(void)
{
Write1Byte(Accel_Wr,CTRL_REG1,0x47); // Normal Mode, 50 Hz
//Write1Byte(Accel_Wr,CTRL_REG4,0x18); //0x0x-2G 0x1x-4G 0x2x-8G 0x3x-16G, 0xx8 HighRes 0xx0 LowRes
Write1Byte(Accel_Wr,CTRL_REG4,0x20); // 8G LowRes
}
//*** Gyro_Init ***//
void Gyro_Init(void)
{
Write1Byte(Gyro_Wr,CTRL_REG1,0x0F); // 100Hz, 12.5, Power Up
Write1Byte(Gyro_Wr,CTRL_REG4,0x20); // 0x00-250dps, 0x10-500dps, 0x20-2000dps
}
//*** Write1Byte ***//
void Write1Byte(u8 Device_Wr,u8 I2Cadr, u8 I2Cdata)
{
I2C1_Start();
I2C1_Write(Device_Wr);
I2C1_Write(I2Cadr);
I2C1_Write(I2Cdata);
I2C1_Stop();
}
//*** Read1Byte ***//
u8 Read1Byte(u8 Device_Wr,u8 I2Cadr)
{
u8 I2CRead;
I2C1_Start();
I2C1_Write(Device_Wr);
I2C1_Write(I2Cadr);
I2C1_Restart();
I2C1_Write(Device_Wr + 1);
I2CRead = I2C1_Read(1);
I2C1_Stop();
return I2CRead;
}