|
C8051F320 от Sillicon Labs и USB драйвер, USB driver - Virtual COM port. |
|
|
|
 |
Ответов
|
Feb 6 2015, 11:58
|
Участник

Группа: Участник
Сообщений: 53
Регистрация: 12-06-07
Пользователь №: 28 387

|
О, спасибо. Уже начинаю понимать. В кейле конечно работаю. Вот только не совсем понял ссылки на регистры у вас в примере R1-R5. Получается что сама процедура общается с библиотекой на уровне асма как раз через регистры? А где можно почитать про эти сообщения? В пдф AN169_USBXpress_Programmers_Guide.pdf я не нашёл ничего конкретного, только описания этих подпрограмм.
|
|
|
|
|
Feb 6 2015, 12:41
|

unexpected token
   
Группа: Свой
Сообщений: 899
Регистрация: 31-08-06
Из: Мехелен, Брюссель
Пользователь №: 19 987

|
Цитата(Angelborn @ Feb 6 2015, 12:58)  А где можно почитать про эти сообщения? Нигде. Напишите код с вызовом нужной функции, к примеру Block_Write(), на Си и откомпилируйте с выставленной настройкой генерации ассемблерного листинга (где-то в кейле есть, может даже по-умолчанию стоит), то в нем после компиляции увидите как происходит вызов библиотечной функции и передача параметров в функцию на ассемблере. Только тут надо быть очень внимательным, ибо вероятность понаделать ошибок из-за невнимательности на ассемблере гораздо выше чем на Си. Посему настоятельно рекомендую писать программы для работы с USB (да и вообще более менее сложные вещи) именно на Си. Кейл имеет хороший компилятор. Цитата(Angelborn @ Feb 6 2015, 12:58)  В пдф AN169_USBXpress_Programmers_Guide.pdf я не нашёл ничего конкретного, только описания этих подпрограмм. Было где-то, про модель памяти и указания какие регистры задействованы и не подлежат изменению после вызова USB_init(). Не помню точно (3 года уже прошло), в пакете должен быть мануал, не верю что в новых версиях он стал хуже.
--------------------
А у тебя SQUID, и значит, мы умрем.
|
|
|
|
|
Feb 6 2015, 13:13
|
Участник

Группа: Участник
Сообщений: 53
Регистрация: 12-06-07
Пользователь №: 28 387

|
Цитата(alexunder @ Feb 6 2015, 14:41)  Нигде. Напишите код с вызовом нужной функции, к примеру Block_Write(), на Си и откомпилируйте с выставленной настройкой генерации ассемблерного листинга (где-то в кейле есть, может даже по-умолчанию стоит), то в нем после компиляции увидите как происходит вызов библиотечной функции и передача параметров в функцию на ассемблере. Только тут надо быть очень внимательным, ибо вероятность понаделать ошибок из-за невнимательности на ассемблере гораздо выше чем на Си. Посему настоятельно рекомендую писать программы для работы с USB (да и вообще более менее сложные вещи) именно на Си. Кейл имеет хороший компилятор. Т.е. вы предлагает просто дизассемблировать отдельные функции? Вариант. Наверное нужно на си переходить. Ассемблер хорош для небольших программ, хотя на нём пишу давно. Цитата Было где-то, про модель памяти и указания какие регистры задействованы и не подлежат изменению после вызова USB_init(). Не помню точно (3 года уже прошло), в пакете должен быть мануал, не верю что в новых версиях он стал хуже. Почитаю, спасибо.
|
|
|
|
|
Feb 6 2015, 14:09
|

unexpected token
   
Группа: Свой
Сообщений: 899
Регистрация: 31-08-06
Из: Мехелен, Брюссель
Пользователь №: 19 987

|
Цитата(Angelborn @ Feb 6 2015, 14:13)  Т.е. вы предлагает просто дизассемблировать отдельные функции? Вариант. Нет! Я говорю об ассемблерном листинге, который генерируется любым компилятором Си (если выставлена соответствующая опция). Это будет точный ассемблерный код Вашей программы, написанной на Си. Чтоб потестировать, создайте пустой Си-проект в кейле для 8051, например и напишите что-то типа void main { a = 5; b = 6; _BlockRead(); } скомпилируйте и посмотрите листинг, оттуда станет ясно, что "находится внутри сишной программы". Это не позволит Вам заглянуть в библиотеку Silabs, т.к. она уже откомпилирована и является сборником бинарного кода (который можно дизассемблировать, только вот зачем?), но дасть понять как работает компилятор Си. Впрочем, думаю все это есть в описании к C51 от Keil, но я никогда его не читал...
--------------------
А у тебя SQUID, и значит, мы умрем.
|
|
|
|
Сообщений в этой теме
Kaplinsky C8051F320 от Sillicon Labs и USB драйвер Sep 2 2005, 13:54 aal CP210x по некоторым источникам - это C8051F320 зат... Sep 3 2005, 11:53 Konst_777 Последующее изложение предполагает, что Вам действ... Sep 3 2005, 17:49 Kaplinsky USBExpress - это действительно очень удобно, если ... Sep 5 2005, 08:58 Charley Цитата(Kaplinsky @ Sep 5 2005, 12:58) USB... Nov 13 2005, 19:06  Kaplinsky Цитата(Charley @ Nov 13 2005, 21:06) По м... Nov 17 2005, 13:15 Konst_777 Готового проекта для С8051F320 у меня нет, так как... Sep 5 2005, 09:45 Kaplinsky Есть вот какое соображение:
Берем драйвер для CP21... Sep 5 2005, 10:24 Konst_777 Лучше так: в firmware контроллера ставим VID и PID... Sep 5 2005, 10:52 Konst_777 И все-таки, учитывая все вышеизложенное Вами, поче... Sep 5 2005, 12:42 Kaplinsky Аднако не соглашусь с тобой дядька. Посчитай сколь... Sep 6 2005, 10:47 Konst_777 Архив содержит .EXE файлы. Проверьте на вирусы.
О... Sep 6 2005, 20:25 Kaplinsky Ну спасиб тебе дядька за AN220, AN197 - веть они ... Sep 12 2005, 09:23 Konst_777 Сам писал. Sep 13 2005, 00:21 Kaplinsky Цитата(Konst_777 @ Sep 13 2005, 02:21)Сам пис... Sep 14 2005, 08:30 Konst_777 После установки SiLabs IDE, в папке C:\SiLabs... Sep 14 2005, 15:29 one_man_show Если усраивает самому написать Virtual Com Port, т... Nov 17 2005, 13:51 Angelborn Освежу тему (уже почти 10 лет ей)
У кого-то ес... Feb 5 2015, 14:51 alexunder Цитата(Angelborn @ Feb 5 2015, 17:51) Осв... Feb 5 2015, 15:46  Angelborn Цитата(alexunder @ Feb 5 2015, 17:46) Дум... Feb 5 2015, 18:25   alexunder Цитата(Angelborn @ Feb 5 2015, 21:25) Ну ... Feb 6 2015, 08:05    Angelborn Цитата(alexunder @ Feb 6 2015, 10:05) Я в... Feb 6 2015, 08:37     alexunder Цитата(Angelborn @ Feb 6 2015, 11:37) Нав... Feb 6 2015, 09:49 Harbinger Файл, прикреплённый к 10-му сообщению в этой теме. Feb 6 2015, 07:00 Angelborn Цитата(Harbinger @ Feb 6 2015, 09:00) Фай... Feb 6 2015, 07:10 jcxz Цитата(Angelborn @ Feb 6 2015, 17:58) Пол... Feb 7 2015, 17:55  alexunder Цитата(jcxz @ Feb 7 2015, 18:55) Порядок ... Feb 8 2015, 21:55 Angelborn Всем спасибо за ответы!
Сделал проект в Кейле,... Feb 10 2015, 07:42 pvasil404 Ребята, помогите написать\подобрать драйвер д... Jul 11 2016, 20:57
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|