|
Виж темите без отговор | Виж активните теми
Дата и час: Вто Юли 28, 2026 3:12 am
|
Страница 1 от 1
|
[ 2 мнения ] |
|
Шъфтване със стандартна функция на CCS
| Автор |
Съобщение |
|
RM
Ранг: Почетен член
Регистриран на: Нед Окт 19, 2008 7:26 pm Мнения: 673
|
 Шъфтване със стандартна функция на CCS
Зареждам един PLL синтезатор с 22бита със 22 клока.
Използвам вградените функций на CCS- output_bit(PIN_A5, shift_left(data,3,0)) .
Извиквам я 22 пъти, но за 3-те байта остават още 2 пъти (24-22). Интересува ме , когато повторно извикам функцията искам да очаквам завъртане на битовете отново от 1 до 22, но двете врътки от предходното завъртане как да ги нулирам. Или завъртам 22 полезни шъфта и ми остават още 2, и предполагам че когато започна пак да използвам 2-ри път функцията, ще започне да пуска последните 2 бита от 3-тия байт ???? Не мога да намеря подробно функцията, предполагам че за тия 3 байта има брояч от 0 до 23 и да го нулирам при 21-път на завъртане на 3-те байта.
-----------------------------------------------------------
Видях листинга на асемблера- всеки път ще зареждам нанова 3-те байта data[3].
|
| Вто Юни 30, 2009 6:31 pm |
|
 |
|
rumen65
Ранг: Новодошъл
Регистриран на: Чет Окт 06, 2005 2:06 pm Мнения: 194 Местоположение: Sofia
|
Syntax:
shift_left (address, bytes, value)
Parameters:
address is a pointer to memory, bytes is a count of the number of bytes to work with, value is a 0 to 1 to be shifted in.
Returns:
0 or 1 for the bit shifted out
Нямаш друг ибор в твоя случай след шифтването се пълни с нули. Ако местиш 24 пъти накрая всичко ще е нула.
|
| Сря Юли 01, 2009 10:55 am |
|
|
|
Страница 1 от 1
|
[ 2 мнения ] |
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 2 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|