28X2 a příkaz setfreq

jova
Příspěvky: 361
Registrován: 16 pro 2013, 11:40

Re: 28X2 a příkaz setfreq

Příspěvek od jova »

DavidO píše: 23 pro 2018, 23:55 A posílal jsi to s tím nastavením, co jsem radil? Příkazem hserout?
Ano příkazem hsersetup B4800_64, %10010 jsem to na začátku programu nastavil a pak v programu zkoušel posílat jednotlivá data příkazem hresout 0, na ten pin C.6. Zkoušel jsem i další přenosové rychlosti, ale nic nefungovalo.
DavidO píše: 23 pro 2018, 23:55 To dává smysl, protože 9600/8=1200.
Ale stejně jsem se asi ztratil v tom, co jak s čím máš propojené a nakonfigurované. No, jestli to nakonec nějak funguje, tak fajn, i když to je divný, tak aspoň něco :-)
Mám procesor 28x2 v kterém běží program. Nastavený je nyní na setfreq em64 a serout N1200.
Hodnoty a texty posílám tou sériovou linkou do procesoru který mi to převádí na LCD, kde je v současnosti osazený procesor 20X2 na frekvenci m64 a data přijímá serin rychlostí N9600_64. zapojení LCD a jeho program je zde: http://electromag1.wifeo.com/fabriquer- ... icaxe-.php

No tak těch 64MHz se moc nepochlapilo. Očekával jsem větší fofr. Asi to bude rozdíl budit krokový motor s 200 pulzy na otáčku a servo s 1000:(
jova
Příspěvky: 361
Registrován: 16 pro 2013, 11:40

Re: 28X2 a příkaz setfreq

Příspěvek od jova »

Jestli ještě mohu, mám dotaz na ty pulzy.
Potřebuji generovat co nejrychlejší sekvenci pulzů pro otáčení serva. Konkrétně se jedná o 1 - 50 000 pulzů v při jedné sekvenci. Zatím co jsem testoval, se mi jako nejrychlejší jeví varianta pomocí příkazu pulsout, kdy mi to při hodnotě 3 viz kód, ještě motor stíhá.

Kód: Vybrat vše

 28X2
setfreq em64
let w3=50000	
for w2=w3 to 1 step-1
pulsout a.0,3
next w2
Nezkoušel jste někdo něco rychlejšího?
Ještě jsem testoval posílat ty pulzy na dva rozdílné výstupy v rámci jedné smyčky (pulsout a.0,3, pulsout a.1,3) a slučovat je pomocí IO hradla. Zjistil sem totiž, že ty pulzy jsou na jednotlivých výstupech vůči sobě částečně posunuté a když se sloučí, tak se tím frekvence samozřejmě zvýší. Docela to funguje. Nedosáhnu tím sice 2x vyšší rychlost a pulzy mají trochu nepravidelné rozestupy cca takto: I_I__I_I__I_I..., ale servo si s tím poradí. Možná to bude chtít otestovat jinou kombinaci výstupních pinů, případně zvýšit počet výstupů, aby to bylo pravidelnější. :roll:
Odpovědět