0
我有一些位,比如下面的位,我需要在它們上面放一個載波。問題是:這可能沒有循環?MATLAB:將位映射到載波
例如,假設您正在使用頻移鍵控。如果該位爲「1」,則該信號應該是頻率爲10,000Hz的正弦波,並且如果該位爲「0」,則該信號應該是具有8,000Hz頻率的正弦波。
位陣列:
bits = [0 0 0 1 0 1 1 0 1 0 1 0 1 0 1 0 1]
循環代碼:
for i = 1:length(bits)
if bits(i) == 1
signal = [signal sin(2*pi*10000*t)]
else
signal = [signal sin(2*pi*8000*t)]
end
end
這將是很好,如果我可以在所有沒有循環單一操作執行此。
謝謝。
是't'矢量還是標量?它在循環內改變了嗎?循環結束時'signal'的大小是多少? – 2011-04-03 03:23:27
如果你有足夠的內存,你總是可以通過比特時間長度的位數來展開循環。 – hotpaw2 2011-04-03 08:00:50
@ d'o-o'b:「位」永遠不會改變,所以我想這使它成爲一個標量。長度(信號)=長度(比特)。 – Eric 2011-04-03 17:24:39