Re: magnetický senzor TLE5010
Petr Zapadlo
zapik na email.cz
Sobota Duben 11 19:38:24 CEST 2020
Zdravím,
tak to vypadá, že se to povedlo. (A to přesně v momentě když jsem to
chtěl zahodit :-)).
Zřejmě jsem blbě četl datasheet a klíčové jsou hlavní hodiny obvodu
(CLK). Chápal jsem DS tak, že je třeba být pod hodnotou uvedenou a také
že musím mít takt hodin SPI max poloviční než hlavní hodiny. Ale asi ne
- v okamžiku, kdy jsem se přiblížil ke 4MHz s hlavními hodinami, tak
obvod ožil. Takže chce přesně 4Mhz. Zatím to honím z RC oscilátoru
(74HC14), ale zřejmě to ve finální konstrukci budu muset udělat lépe.
A dále je třeba poslat update command (0x00) aby se do registrů dostaly
nové hodnoty.
Tož tak, děkuji za pomoc.
Petr
Dne 11. 04. 20 v 11:35 Jindrich Fucik napsal(a):
> Na první pohled se mi to zdá v pořádku.
> Ještě bych se možná podíval na ND, teď tam máš 1, to se mi zdá
> logické, ale pro jistotu bych si vyzkoušel ještě 0 nebo 2.
>
> Dne 11.4.2020 v 11:08 Petr Zapadlo napsal(a):
>> Zdravím,
>>
>> tak si s tím tady hraju, ale že bych někam pokročil, se říci nedá.
>>
>> Mám pocit, že mi mi IO nijak nereaguje. Pokouším se z něho vyčíst
>> alespoň ID a revizi, ale asi jsem něco nepochopil.
>>
>> Schema a průběhy jsou zde:
>>
>> https://cloud.zapadlo.name/index.php/s/X8GXNs7f9yFGDeS
>>
>> Kod je tady:
>>
>> void setup() {
>>
>> Serial.begin(115200);
>> SPI.begin();
>> SPI.setClockDivider(SPI_CLOCK_DIV128);
>> pinMode(CS, OUTPUT);
>> digitalWrite(CS,1);
>> }
>>
>> void loop() {
>>
>> SPI.beginTransaction(SPISettings(10000, MSBFIRST, SPI_MODE1));
>> digitalWrite(CS, 0);
>> SPI.transfer(~(0)); //update command
>> digitalWrite(CS, 1);
>> delay (2);
>> digitalWrite(CS, 0);
>> SPI.transfer(~(uint8_t)(B11101001)); //adresa 0x0D, bytes 1
>> for (uint8_t i=0; i<1;i++){
>> Serial.print(SPI.transfer(0x00));
>> Serial.print(" ");
>> }
>> Serial.println(" ");
>> digitalWrite(CS, 1);
>> SPI.endTransaction();
>> delay(300);
>> }
>>
>> SPI sběrnici zkouším poprvé, ale neměla by být tak složitá. Trochu
>> plavu v SPI_MODE, ale jednička by měla tomu TLE5010 sedět.
>>
>> A pro čtení právě musím odesílat 0x00 aby tranzistor zůstal zavřený a
>> MOSI signál mi nekecal do MISO. Když posílám command B11101001, tak
>> se vrátí zpět správná hodnota (invertovaná), ten IO by měl hned potom
>> začít vysouvat data, je tak?
>>
>> Trochu nechápu smysl update_command, ale na tento úvod by to nemělo
>> mít snad vliv. Tady jsem našel nějaký kousek kodu
>> https://github.com/vostrenkov/stm32f103_tle501x/blob/master/Src/main.c,
>> to vyčítání mám snad podobně.
>>
>> Petr
>>
>>
>>
>>
>> Dne 07. 04. 20 v 9:05 Jindrich Fucik napsal(a):
>>> Koukám do DS
>>> https://www.digchip.com/datasheets/download_datasheet.php?id=2688384&part-number=TLE5010
>>>
>>>
>>> Tak se mi zdá, že to není žádná velká matematika. Prostě ho připojíš
>>> na SPI s tím, že si dáš pozor, aby DO bylo open drain, propojíš DI a
>>> DO a pro čtení odesíláš 0xFF na místo tradičního 0x00.
>>>
>>> Dne 6.4.2020 v 21:15 Petr Zapadlo napsal(a):
>>>> Zdravím,
>>>>
>>>> chtěl bych použít magnetický senzor natočení TLE5010. Neměl ho
>>>> náhodou někdo v ruce?
>>>>
>>>> Navzdory tomu, že je mohutně používaný v ovladačích MMjoy2, nenašel
>>>> jsem ani jediný kousek kodu pro komunikaci s tímto senzorem.
>>>>
>>>> Rozhraní není typické SPI - má obousměrný pin data, ale jak se
>>>> podle schemat na inetu zdá, tak to připojují na SPI rozhraní.
>>>>
>>>> Nějaká inspirace by se hodila.
>>>>
>>>> Díky
>>>>
>>>> Petr
>>>>
>>>>
>>>> _______________________________________________
>>>> HW-list mailing list - sponsored by www.HW.cz
>>>> Hw-list na list.hw.cz
>>>> http://list.hw.cz/mailman/listinfo/hw-list
>>> _______________________________________________
>>> HW-list mailing list - sponsored by www.HW.cz
>>> Hw-list na list.hw.cz
>>> http://list.hw.cz/mailman/listinfo/hw-list
>> _______________________________________________
>> HW-list mailing list - sponsored by www.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
Další informace o konferenci Hw-list