Fórum témák
» Több friss téma |
Fórum
Ilyen mélységig sajnos nem látok a témába - még. Az USB sokkal praktikusabb lenne, de amennyire tudom sok vele a gond, driver problémák, beszerezhetőség.
Elvileg ebben a kapcsolásban a RAM azért kell, mert lassú a soros port átvitel ("tárlolásos módot" kell használni nagyobb frekvenciákon), USB-n ez a probléma nem lenne, így direktbe is mehetne. Vagy tévedek? A bank kiválasztást ki tudnád fejteni egy kicsit, mert tény, hogy a leírástól eltérnek. Ugyan az is tény, hogy a szimulátorral "hibásan" is működik. Betettem egy 4 Mhz-es kristályt, a baud. rate-et 4800-ra állítottam, hiba sajnos megmaradt. Bár itt is jelentős a hiba. Van erről a PIC doksijában egy nagyon jó táblázat. Kipróbálom 4 Mhz-es kristállyal, 9600-on (itt elvileg csak 0.16% a hiba BRGH=1-en) Hol találtad egyébként az USB-s leírást?
Köszönöm a tippeket!
Hát a leírás írja a 20 Mhz-es kristályt, kicsrélem és kipróbálom mással. Az áramkör nem próbapenelen van, túl bonyulultnak láttam ott elkészíteni, lehet, hogy érdemesebb lett volna. Valószinűleg építek tesztelő áramkört a PIC-hez és a maximhoz is, aztán meglátjuk. Először a hex-eket égettem, csak utána kezdtem az asm-et bogarászni. DE néhány hónapos PIC programozói multtal más sikerült egy hibát felfedeznem.... ![]() Az PIC leírása szerint a bank kiválsztás 2 biten történik. A STATUS reg RP1 és RP0 bitjén, a progiban csak az RP0 szerepel. ![]() Persze a leírás a PIC16F877A ra vonatkozik, de talán a ekkora eltérés nincs a két IC között(PIC16F877/PIC16F877A).
Íme a válasz.
Elnézést, hogy nem fordítom le. A lényeg jól benne van. Forrása: [link=http://www.measurement-testing.com/elecrical-shielding.html]http://www.measurement-testing.com/elecrical-shielding.html[/link]
Szóval aszondják az okosok, hogy ez egy Hollywood Plus kártya. Ha esetleg valakinek kéne még a lábkiosztás, ideírom. Köszi a segítséget deguss, tied a pont...
![]() note: SDA and SCL signals are not required to get the mpeg boards to work, it is only to keep the Plug&Play compatibility for the monitors if they support this feature. External view, seen from the bracket: _________ /_________ | | | 9 8 7 | | 6 5 4 3 | 2 1 / --------- 1:Blue IN 2:GND 3:Green IN 4:GND 5:Vsync IN 6:Hsync IN 7:Red IN 8:SDA (from pin12 of DB15) 9:SCL (from pin15 of DB15)
The MOSFETs used are Hitachi lateral devices, 2SK1058 (N-Channel) and 2SJ162 (P-Channel). These are designed specifically for audio, and are far more linear than the (currently) more common switching devices that many MOSFET amps use. Unfortunately, they are not especially cheap, but their performance in an audio circuit is so much better than vertical MOSFETs, HEXFETs, etc., that there is no comparison. note that using HEXFETs or any other vertical MOSFET type is not an option. They will fail in this circuit, as it was not designed to use them <--------az angol leírás ezt írja megjegyzésnek a FET-ekhez, nem igazán értem mit jelent
![]()
Linkek vannak, de milyenek. Igaz csak az elsőt néztem meg, ahol valóban van egy harci robothoz való H-bridge, meg egy olvasó hozzászólása, hogy a H-bridge az első másodpercben cipóvá sül. A portál tulajdonosa ezt el is ismeri, de szerencsére van egy linkje "egy még jobb H-bridge vezérlésre". A link a csóka robotos könyvének reklámja, amit megrendelhetsz és megvehetsz. Ettől aztán elmegy az ember kedve.
Egyébként angolul tele van a világ H-bridge linkekkel. Magyarul is van egypár ugyanis hobbi szinten a következők használják: 1. RC modellvezérlés (Ugye nehéz a repülön levő potmétert a földről csavarni?) 2. Harci robotok (fentiek miatt) 3. Diszko-villágítás - zenére rángás 4. Modellvasut (mind a hagyományos mind a digitális) Az Ő lapjaikon néha magyarul is találni valamit. Továbbá az összes MCU gyártó (pl. Microchip) "Application note"-jaiba dögivel van. Üdv Csapajev Idézet: „Most, hogy jobban megnézem, elég érdekes ez a kapcsolás...” angol szöveg körítés van hozzá megkeresem.. meg is van: Central Locking Interface Some cheap car alarms do not have a connection for the central locking system. However, in most it should be possible to find a point in the alarm circuit which is high when the alarm is activated and low when it is off. This signal can then be used to drive this relay circuit to operate the central locking system. The interface circuit converts each toggle of the alarm signal to a brief pulse to operate the two relays which then are then connected in parallel with appropriate contacts on the master solenoid in the central locking system. Frank Keller, via email. ($40) forrása meg itt, közép tájt
Köszike!
Na fogtam magam kísérleteztem. Először megpróbáltam a bbatka hex fileját ráégetni. Sajnos nem sikerült. Eztán fogtam amgam csináltam egy új projektet a Pikdevvel. Beraktam a bbatka által készített ora.asm-et, az include directoryba szereztem egy 16f818.inc fájlt amit aprojekthez is hozzáadtam. Aztán megpróbáltam lefordítani. De az utasításokra általában azt írta hogy nem definiáltam előre őket. Pölö: " symbol not previously defined (PCLATH) ". Nem tudja véletlenül valaki, hogy hogyan kell a Pikdevet beállítani hogy megtalálja ezeket.
Van egy "fő" PIC, amelyik a PC-vel és a többi PIC-kel tartja a kapcsolatot. A "fő" PIC és a PC közti kapcsolat USART (nem feltétlenül kell az egész RS232-t installálni) és elég 1200 baud. A kommunikációs protokollt célszerű ASCII-ban kidolgozni, mert akkor az egészet a PC-s program megírása előtt egy terminál emulátor programmal le lehet ellenőrizni. A PIC és PC kapcsolatnak csak az a trükkje, hogy más a PC RS232 jelszintje, ehhez ideális egy MAX232-es chip, de néhány tranzisztorral is meg lehet csinálni, bár ez utóbbit sose próbáltam. Elvileg az I2C-t is be lehetne vinni a PC-be, de ahhoz nincs kész protokoll. (A Linux-ban természetesen van) A PIC oldalon nem célszerű szoftverrel megoldani az USART-ot, jobb ha van hardver támogatása.
A "fő" PIC tartja a kapcsolatot a többi PIC-kel. Az I2C egy multimaster-cliens protokoll, de itt elég egy "normál" master-cliens protokoll. Ez azt jelenti, hogy a "fő" PIC, amikor éppen nem a PC-vel foglalkozik, akkor üzeneteket küldd a többi PIC-nek, akik azt értelmezik. Az I2C nyilván az eszközök állapotának a lekérdezésére is alkalmas. Az I2C sebessége alapból 100KHZ. A fenti feladathoz nem kell valami nagy sávszélesség, tehát akár szoftverből is meg lehet írni a klienseket. Az I2C és USART programok a Microchip application note-jai közt dögivel vannak, mind szoftveres, mind hardveres verzióra. A dolognak egyetlen hátulütője van: a programnak nem lehet csak úgy nekiesni és megírni. Mind a "fő" PIC, mind a többi PIC programját "valós idejű" stílusban kell megírni. Ez azt jelenti, hogy az egyes PIC-ek funkcióit pontosan meg kell tervezni (ugye egyszer van az I2C azután a ki- vagy bekapcsolás meg még amit akarunk.) Ezután meg kell tervezni, ki mekkora időkeretet kap, prioritást adva a kommunikációnak. A "strukturált programozás" elnevezés analógiájára ezt lehetne "struktúrált időprogramozásnak" hívni. Ha nem fér bele az összes processz egy időkeretbe, akkor a kilógokat még részprocesszekre kell bontani. Cserébe viszont rendkívüli modularitást kapsz. Hát valahogy így.
Teljesen véletlenül a ház berendezéseinek vezérlésre találtam egy rendkívül érdekes megoldást, amit már ipari méretekben használnak.
Az előbb én I2C buszt ajánlottam. Nos az X-10 szabvány a hálózatio feszültséget használja busznak. Amikor az AC éppen 0, akkor ráteszi a digitális jelet. Igy elég a villanyóra utáni részbe bekötni a vezérlő egységet. A normál fogyasztók nem érzékelik a jelet, a többi pedig annak megfelelően működik. Bármely web keresőbe beírva az X-10-et, hihetetlen mennyiségű eszköz és információ érkezik. A Microchip AN 236-os application note-ja egy központ elkészítését írja le. Üdv Csapajev
Powerful disc magnet - 1 inch diameter x 0.5 inch thick. not FOR KIDS.
Hmmmmm....
A nő mint webszerver. Hibaüzenetek és értelmezésük:
-400 Bad Request - a férfi a randira virág nélkül érkezett -401 Unauthorized - férjnél van -402 Payment Required - gyertyafényes vacsora -403 Forbidden - El a kezekkel! -404 not Found - Ma a barátnőimmel bulizok! -405 Method not Allowed - Hátulról nem engedem! -406 Method not Acceptable - Nem veszem a számba! -407 Proxy Auth. Required - Meg kell kérdezni anyámat! -408 Request Timeout - Tudod, hogy mióta nem hívtál??? -409 Conflict - Ki volt az a szőke nő, akivel tegnap láttalak? -410 Document Removed - El akarok válni! -411 Length Required - Miii? Ezt nevezed te hosszúnak??? -412 Precondition Failed - Miiii? Nincs nálad óvszer??? -413 Request Entity Too Large - EKKORA nekem be nem fér! -415 Unsupported Media Type - Neeem, négyesben szó sem lehet róla! -500 Internal Server Error - menstruál -501 not Implemented - még sosem feküdt le senkivel -502 Bad Gateway - ...fúúúúj, sós! -503 Service Unavailable - Fáj a fejem! -504 Gateway Timeout - Ennyi?
BSF azt jelenti, hogy a STATUS regiszter RP0-ás bitjét "1"-es szintre állítod...ezzel azt mondod, hogy váltson bank1-re
BCF ennek az ellenététe, ezzel "0"-ba állítod az RP0-ás regisztert, vagyis visszakerülsz a bank0-ba. A status egy belső regisztere a PIC-eknek...ebben tárolják az aktuális helyzetüket, információkat a futó programról (pl. egy előzőleg lefutott kivonás eredménye 0 lett-e, stb.). Nameg itt választhatsz bank-ok közül is...
De hülye vagyok!
![]() Nem vettem észre elsőre... ...tehát ahhoz, hogy a TRISA és TRISB regisztereket meg tudd változtatni, illetve értéket tudj adni nekik, ahhoz át kell váltanod a bank1-re! Aztán ha beállítottad, vissza kell váltani a bank0-ra, hogy ott dolgozhass tovább.
Igen le tudtam fordítani, és a hex fájl alapján le tudtam szimulálni is a PIC szimulátor progiban! De ha visszaolvasol a hibákhoz, akkor ott a bank1 és bank2 -vel van még valami, azok nem tünnek el!
Miért nem?( ezek:Message<302> C:MPLABSPROGRAM 1VALAMI.ASM 12 : register in operand not in bank 0. Ensure that bank bits are correct. Message<302> C:MPLABSPROGRAM 1VALAMI.ASM 14 : register in operand not in bank 0. Ensure that bank bits are correct. )
Mi a hiba?
Make: The target "C:MPLABSProgram 1valami.o" is out of date. Executing: "C ![]() Warning[205] C:MPLABSPROGRAM 1VALAMI.ASM 1 : Found directive in column 1. (LIST) Warning[205] C:MPLABSPROGRAM 1VALAMI.ASM 3 : Found directive in column 1. (__CONFIG) Error[113] C:MPLABSPROGRAM 1VALAMI.ASM 3 : Symbol not previously defined (CP_OFF) Error[113] C:MPLABSPROGRAM 1VALAMI.ASM 3 : Symbol not previously defined (WDT_OFF) Message[302] C:MPLABSPROGRAM 1VALAMI.ASM 12 : register in operand not in bank 0. Ensure that bank bits are correct. Message[302] C:MPLABSPROGRAM 1VALAMI.ASM 14 : register in operand not in bank 0. Ensure that bank bits are correct. Halting build on first failure as requested. BUILD FAILED: Sun Nov 27 12:43:16 2005
"There are not easy to connect or drive to."
Na itt a lényeg...
Ezt a linket egy oldalon találtam, nem tudom mi igaz belőle, de ez az LCD :
15 Ausztrál dollár, ami annyi tesz hogy mai árfolyamnak megfelően 2366,7 Ft nak felel meg. Itt a bolt címe ahonnan rendelni lehet: http://www.oatleyelectronics.com/displays.html
Előbb-utóbb csak összejön ez a progi.A paritás problémát Picsimulator forrásában a TXSTA register manipulálásával próbálom megoldani, oly módon hogy minden karakter előtt maszkolom. Még nem próbáltam ki a Pic-ben. Majd délután.
Az MBus-nál kicsit zavarosabb a sorszámozás mint az FBus-nál, de nem lesz gond megoldanom.
Na az elvi vázlata a következő... A sorosport jelet rádiófrekisen moduláljuk... A kisautóban meg demoduláljuk.
Mikor egy parancs érkezik, jön egy 1-es, vársz 104mikro sec et, és utánna jönnek rajta a bitek. az a 8 bit. Azután kapsz egy stop bitet. Szóval a PIC RA0-ra kell rávinni a jelet... Visszafele kommunikáció szerintem nem kell, mert csak oda irányú adat kell.... Vissza gondolom nem akarsz hozni semmi adatot. Azaz figyelni kell a RA0 bemenetet, és szépen füzögetni a biteket... Itt van hozzá az soros kommunikáció unit. Én assemblyben szoktab dolgozni de a lényeg világosan látszik ebből is:
Ezután van a waites unit:
És végül itt a használatára egy főunit... Az rs232lib.inc a felső kód. Az rs232delay.inc a második kód. Ezek vannak belinkelve. Ja és itt a főunit:
Hello Topi!
A MIDI-port tul.képpen egy soros port, ami 31.25 kbaud-os sebességgel kommunikál. Ez jó, mivel a PIC-ek többségében van soros port. Csak a sebességet kell beállítani... A kommunikáció egy START bit-tel kezdődik (ez mindíg 0), és egy STOP bit-tel végződik (mindíg 1). Vannak "parancs" byte-ok (pl. hangjegy bekapcsolása [note On], kikapcsolása [note Off], ...), és adatbyte-ok. Pl. egy note On parancs után ki kell küldened a billentyű "számát" (max 127 bill.), és hangerejét (szintén max. 127). Ez össz. 3 bájt. Azért "csak" 127, mert a 8. bit különbözteti meg a parancs és adatbájtokat (parancsnál a 8. bit 1, adatnál 0). Van néhány nagyon jó kis táblázatom a MIDI standard üzenetekről. Ha kell becsomagolom és elküldöm neked. Ill. van példaprogramom, igaz billentyűhöz, de talán ez is ad némi segítséget. Az ütésérzékenység megoldható a PIC belső A/D konvertereivel, "alapesetben" 8 (egyes PIC-eknél 10), esetleg 16 csatornára kibővítve(analóg multiplexerrel). Az AD konverzió után kapott értéket pedig máris küldhetjük a MIDI portra... Sokat foglalkoztatott ez a téma. Amit eddíg nem sikerült megcsinálnom az a Pitch Bend, de dobnál erre nincs is szükség ![]() Ha gondolod szívesen segítek a témával kapcsolatban (ha tudok ![]() Üdv.:Kaninjo |
Bejelentkezés
Hirdetés |