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 09 19, 02:40. Visos datos yra GMT + 2 valandos.
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
Esmė tokia, pajungiau PIC'o ir FT RX ir TX linijas vice versa vieną kitai, siunčiu paprastą raidę "A", o per terminalą ant PC gaunu "Щ" Baud rate abiejų 9600 stovi. PIC programa rašyta mikroC:
Kodas:
void main() {
CMCON0 = 0x07;
TRISC = 0b00100000;
UART1_Init(9600);
do {
UART1_Write_Text("A");
}while(1);
}
Ką praleidžiu ? Neturiu galimybės pabandyti per MAX232 ant PC su COM port'u :/
P.S. Kai FT232RL čipuko TX ir RX linijas užtrumpinu, į pc gaunu raidę, kurią įvedu, reiškias su FT - viskas trvarkoje.
P.P.S Su oscilografu žiūrėjau PIC'o TX koją, tai signalą duoda gera, "01000001", tik spėju kažkas negerai su dažniais.
99% tokiu klaidu problemu buna neteisingam baud rate nustatyme. O dabar is to kodo gabaliuko ka cia idejai tai nieko nesimato, nes visa esme yra UART1_Init() paprogramej.
P.P.S Su oscilografu žiūrėjau PIC'o TX koją, tai signalą duoda gera, "01000001", tik spėju kažkas negerai su dažniais.
Pasimatuok bito trukmę ir bus aišku kokiu greičiu dabar veikia.
Nesugalvoju kokiu būdu tai padaryti su mano turimu DSONano oscilografu
Socrates rašo:
99% tokiu klaidu problemu buna neteisingam baud rate nustatyme. O dabar is to kodo gabaliuko ka cia idejai tai nieko nesimato, nes visa esme yra UART1_Init() paprogramej.
Vat man irgi tokia idėja kilo, kad gal šita biblioteka kažkotai nedraugauja su PIC16F688. Iš pradžių mintis kilo, kad kadangi naudoju vidinį rezonatorių, kuris programiškai nustatytas ant 4Mhz, ištikrųjų turi paklaidas, ir gal veikia šiektiek kitokiu dažniu, bet nu c'mon, kam tada daryt išviso jį
Radau kame reikalas. Paskaičiavau su oscilografu, kad sumoj 9bit'ai, su start-stop bitais. Tai duomenim lieka 7 bit'ai. Pakeičiau COM porto nustatymuose į 7bit ir eina Tai reiškias, prieš siunčiant duomenis, nepadaro start bit'o. Teks padaryti jį ranka.